我需要帮助与自定义结帐过程,我在magento 2工作。我发现这个代码在文件magento/module-checkout/view/frontend/web/template/shipping-address/form.html(Magento 2.1.1)。
<!-- ko foreach: getRegion('additional-fieldsets') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
正如我所理解的,这将在checkout中显示整个表单。checkout_index_index. xml中没有定义像firstname、lastname这样的单个字段,我也不知道getTemplate()的意思是。我认为它基本上意味着呈现所有的孩子,但他们不在xml中。我想样式的形式,使例如地址是在上面,名字第二等。但我想做其他的变化,以及,所以问题是
如何呈现当前范围中的特定子项?
我能做些什么吗:
<!-- ko foreach: getRegion('additional-fieldsets.address') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
<!-- ko foreach: getRegion('additional-fieldsets.firstname') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
谢谢你。
另一个示例位于文件/view/frontend/web/template/onepage. html中
<div class="opc-wrapper">
<ol class="opc" id="checkoutSteps">
<!-- ko foreach: getRegion('steps') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
</ol>
</div>
我想做的是:
<div class="opc-wrapper">
<ol class="opc" id="checkoutSteps">
<li>
<!-- ko foreach: getRegion('steps.column1') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
</li>
<li>
<!-- ko foreach: getRegion('steps.column2') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
</li>
<li>
<!-- ko foreach: getRegion('steps.column3') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
</li>
</ol>
</div>
P.S.:我发现additional-fieldsets不在item name=""中,而是在displayArea中。这里的displayArea是什么意思?
4条答案
按热度按时间3wabscal1#
若要呈现特定子级,请使用
ddhy6vgd2#
退房-航班-详细信息.js:
);
checkout 航班详细信息.html:
ar7v8xwq3#
据我所知,displayArea意味着属性值将通过getRegion()标识Web模板中的呈现区域,该呈现区域通过getTemplate()
例如:实际布局
在Web模板中
我正在为结帐过程添加自定义步骤和表单,并添加新表单域到目前为止,我发现是,
1)在模块操作布局文件中,您可以定义表单元素\app\code\Ds\Checkout\view\前端\layout\checkout_index_index. xml
2)在您的模块敲除js文件中处理数据保存etc\app\code\Ds\Checkout\view\frontend\web\js\view\checkout-flight-details.js
3)在您的模块Web模板中,使用knockout js\app\code\Ds\Checkout\view\frontend\web\template\checkout-flight-details.html呈现动作布局定义的元素项
checkout 索引.xml:
由于注解限制,以下代码为其他代码:
lawou6xi4#
我尝试了@Vinai的方法,但没有成功,因为我不知道如何使用他的sniplet。我找到了一个完整的用例。
下面的代码在我的送货地址定制中运行得非常好。