2
Q
スレート
A
答えて
6
はい。このチュートリアルでは、コードを少し修正することで動作させることができました。この回避策は、shopifyチュートリアルがSlateに対応するように更新されるまで関連性があります。
チュートリアルの指示に従ってください。 ステップ「Locate your selectCallback function」に到達すると、 にスレートにselectCallback関数がないことがわかります。 Yikes! 代わりにtheme.jsで "_onSelectChange"を見つけてそこにコードを追加してください。 これは見本のコードで、最終的な機能が追加されます。
/**
* Event handler for when a variant input changes.
*/
_onSelectChange: function() {
var variant = this._getVariantFromOptions();
this.$container.trigger({
type: 'variantChange',
variant: variant
});
if (!variant) {
return;
}
// BEGIN SWATCHES
var selector = this.originalSelectorId;
if (variant) {
var form = $(selector).closest('form');
for (var i=0,length=variant.options.length; i<length; i++) {
var radioButton = form.find('.swatch[data-option-index="' + i + '"] :radio[value="' + variant.options[i] +'"]');
if (radioButton.size()) {
radioButton.get(0).checked = true;
}
}
}
// END SWATCHES
this._updateMasterSelect(variant);
this._updateImages(variant);
this._updatePrice(variant);
this.currentVariant = variant;
if (this.enableHistoryState) {
this._updateHistoryState(variant);
}
},
その後、チュートリアルを完了したら、それはまだ働いていないわかります。これは、theme.liquidに追加するコードが、Variant Selectsに存在しないクラスを使用するためです。 product.liquidオン (これはほとんどのスレートのテーマのセクションである)ので、同じように、あなたの選択に、クラス「シングル・オプション・セレクター」を追加します。それはになっていますよう
{% unless product.has_only_default_variant %}
{% for option in product.options_with_values %}
<div class="selector-wrapper js">
<label for="SingleOptionSelector-{{ forloop.index0 }}">
{{ option.name }}
</label>
<select
id="SingleOptionSelector-{{ forloop.index0 }}"
class="single-option-selector"
data-single-option-selector
data-index="option{{ option.position }}">
{% for value in option.values %}
<option value="{{ value | escape }}"
{% if option.selected_value == value %}selected="selected"{% endif %}>
{{ value }}
</option>
{% endfor %}
</select>
</div>
{% endfor %}
{% endunless %}
今、チュートリアルでは動作するはずです。私はこれが誰かを助けることを望む!
関連する問題
- 1. 清潔なスレートのインストールレール
- 2. "スレート清掃"をPythonで
- 3. きれいなスレートで始める
- 4. Python 2.7:スレートのインポート中にエラーが発生する
- 5. Androidスレートにはどの開発ツールセットを使用しますか?
- 6. Shopifyのテーマ開発フレームワークを結合するCSSフレームワークとスレートをマテリアライズ
- 7. スレートによって作成されたgithubページで基本認証を実装する方法
- 8. Railsで清潔なスレートを取得するために、どのプロセスを強制終了する必要がありますか?
- 9. マークダウンで折りたたみ可能な見出しを持つには?
- 10. 角のUIグリッド - 暗い彼ら
- 11. Androidタブレットエミュレータスキン
- 12. 新しいAzureポータルへの広告の挿入
- 13. リセットIRBコンソール
- 14. 一時的なリストを消去せずに消去する
- 15. カスタムイントロページにスタイリングを適用するにはどうすればよいですか?
- 16. どのようにしてフロードキュメントのすべての内容を消去しますか
- 17. 一部のブートスウィッチテーマは正しくインポートされませんか?
- 18. 命令はどのようにプロセッサおよびコンピュータのボードに埋め込まれているか
- 19. クロムでデバッグするときにVS2017によってどのようなスイッチが設定されますか?
- 20. Windows 10/Windows 8/WinRTでデバイスを一意に識別できますか
- 21. 特定の要素が削除されたときのトリガーイベント
- 22. iPhoneとAndroidのクロスプラットホーム開発
- 23. 特定の表に関連するoracleデータベースのすべてのコード、トリガーを見つけるにはどうすればよいですか?
- 24. Adobe Premiere Pro - タイムラインに複数のフレームを表示する方法は?
- 25. Acumatica DACエクステンションはデータをプルしません
- 26. glPushMatrix()とglPopMatrix()はどのようにシーンを同じに保ちますか?
- 27. HSQLテーブルの事前準備
- 28. WEKAのMultilayerPerceptron:訓練後、再びトレーニングを
- 29. woocommerce product "custom info input"フィールドオプション
- 30. bytesIOオブジェクトの作成
共有ありがとうございます –