背景:Magento 2.1.7。自定义主题覆盖默认的Luma主题。
我有一个自定义组件工作并在结帐页面上显示,但我很难让它显示我想要的位置。
我称之为'my-component'并用下面的'Vendor'替换了实际的供应商,但是我已经编写了相关的js和html以及该组件完全符合预期。唯一的问题是我试图让它直接在运输表单下面渲染,所以我认为这是一个布局问题?
我的模块目前只在div中输出文本'Test',我正在尝试将我的组件添加到'item name =“address-list-additional-addresses”'的子元素中。我不知道这是不是正确的地方,但我只是想在表格之后得到它。
目前,它直接在装运地址表格上方输出,其ID为“自定义字段”,不属于我的.html模板,我不会故意添加。我找不到任何方法在这个我想要的送货地址表后添加它。
我知道我对checkout_index_index.xml的更改正在运行,因为我可以将我的组件移动到'item name =“before-shipping-method-form”',并且它最终会超出您预期的送货方式表单。
my-component.html (在li id =“custom-field”里面的运费表单中提取)
<div class="cart-tc-notice">
Test
</div>
checkout_index_index.xml (我的主题版本和工作原理 - 我可以在默认的checkout_index_index.xml中定位其他内容,它会生效并移动我的组件)
<referenceBlock name="checkout.root">
<arguments>
<argument name="jsLayout" xsi:type="array">
<item name="components" xsi:type="array">
<item name="checkout" xsi:type="array">
<item name="children" xsi:type="array">
<item name="steps" xsi:type="array">
<item name="children" xsi:type="array">
<item name="shipping-step" xsi:type="array">
<item name="children" xsi:type="array">
<item name="shippingAddress" xsi:type="array">
<item name="children" xsi:type="array">
<item name="address-list-additional-addresses" xsi:type="array">
<item name="children" xsi:type="array">
<item name="my-component" xsi:type="array">
<item name="component" xsi:type="string">Vendor/js/view/checkout/my-component</item>
</item>
我想如果我正在处理容器或块,我只会在=“ - ”之后做一个厚脸皮......有什么建议吗?