<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">Magento 2中的UI组件之一是导航组件,可以用于创建侧边栏或面包屑导航。导航组件使用KnockoutJS来管理视图和交互行为。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">下面是一个基本的示例代码,可以创建一个侧边栏导航:</p><pre class="brush:as3;toolbar:false"><sidebar> <nav> <ul> <li> <a href="#">Link 1</a> </li> <li> <a href="#">Link 2</a> </li> <li> <a href="#">Link 3</a> </li> </ul> </nav> </sidebar></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在Magento 2中,可以使用KnockoutJS来对这些链接进行交互处理。例如,您可以在用户单击链接时执行某些JavaScript操作,或者在页面加载时动态生成链接。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">下面是一个示例,显示如何使用KnockoutJS在用户单击链接时显示一个警告框:</p><pre class="brush:as3;toolbar:false"><sidebar> <nav> <ul> <li> <a href="#" data-bind="click: showAlert">Link 1</a> </li> <li> <a href="#" data-bind="click: showAlert">Link 2</a> </li> <li> <a href="#" data-bind="click: showAlert">Link 3</a> </li> </ul> </nav> </sidebar> <script> require(['jquery', 'ko'], function ($, ko) { var viewModel = { showAlert: function() { alert("You clicked a link!"); } }; ko.applyBindings(viewModel); }); </script></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">这个示例中,我们添加了一个data-bind属性来告诉KnockoutJS要对链接进行绑定。然后,我们在JavaScript代码中定义了一个viewModel对象,该对象具有一个showAlert方法,该方法在用户单击链接时显示一个警告框。最后,我们使用ko.applyBindings方法将viewModel对象应用于页面。</p><p class="p2" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; min-height: 17px; white-space: normal;"><br/></p><p><br/></p>
文章列表
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,MultiselectColumn 是一种 UI 组件,它允许用户从多个选项中进行多选操作。该组件通常用于产品编辑页面、类别编辑页面等。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">以下是一个示例代码,展示如何在 Magento 2 中使用 MultiselectColumn 组件。</p><pre class="brush:as3;toolbar:false"><column name="category_ids" class="Magento\Catalog\Ui\Component\Product\Form\Categories"> <settings> <filter>select</filter> <label translate="true">Categories</label> <sortable>false</sortable> </settings> <formElements> <multiselectColumn> <settings> <options class="Magento\Catalog\Ui\Component\Product\Form\Categories\Options"/> <caption translate="true">--Please Select--</caption> <dataType>text</dataType> <label translate="true">Category</label> </settings> </multiselectColumn> </formElements> </column></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在上面的示例中,<column> 标签用于定义列的名称和类。<settings> 标签用于设置过滤器、标签和可排序性。<formElements> 标签用于定义要在此列中显示的表单元素。在这里,我们使用了 MultiselectColumn 组件,并在其中定义了选项、说明文字、数据类型和标签。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">MultiselectColumn <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">组件可以通过</span> <options> <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">标签中的类来定义选项。在上面的示例中,我们使用了</span> Magento\Catalog\Ui\Component\Product\Form\Categories\Options <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">类来定义产品类别选项。</span></p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,有多个 UI 组件可以实现多选操作。其中一种是 Multiselect 组件,它可以让用户从多个选项中进行多选操作。另外还有 CheckboxSet 组件和 RadioSet 组件,它们也可以实现多选操作。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">以下是一个示例代码,展示如何在 Magento 2 中使用 Multiselect 组件实现多选操作。</p><pre class="brush:as3;toolbar:false"><field name="categories"> <argument name="data" xsi:type="array"> <item name="options" xsi:type="object">Magento\Catalog\Ui\Component\Product\Form\Categories\Options</item> <item name="config" xsi:type="array"> <item name="multiple" xsi:type="boolean">true</item> <item name="dataType" xsi:type="string">text</item> <item name="label" xsi:type="string" translate="true">Categories</item> <item name="formElement" xsi:type="string">multiselect</item> <item name="source" xsi:type="string">product</item> <item name="dataScope" xsi:type="string">categories</item> <item name="sortOrder" xsi:type="number">20</item> </item> </argument> </field></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在上面的示例中,<field> 标签用于定义字段的名称。在 <argument> 标签中,我们使用了 Multiselect 组件,并在其中定义了选项、数据类型、标签、表单元素和数据作用域等属性。通过将 multiple 属性设置为 true,我们允许用户从多个选项中进行多选操作。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">Multiselect 组件可以通过 <options> 标签中的类来定义选项。在上面的示例中,我们使用了 Magento\Catalog\Ui\Component\Product\Form\Categories\Options 类来定义产品类别选项。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">除了 Multiselect 组件,CheckboxSet 组件和 RadioSet 组件也可以实现多选操作。它们与 Multiselect 组件类似,只是表单元素的样式和行为不同。例如,CheckboxSet 组件将多个复选框组合在一起,而 RadioSet 组件将多个单选框组合在一起。</p><p class="p2" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "PingFang SC"; white-space: normal;">总的来说,在<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> Magento 2 </span>中有多种<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> UI </span>组件可以实现多选操作,开发者可以根据具体需求选择适合自己的组件。</p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,模态框是一种常用的 UI 组件,它可以在当前页面上显示一个弹出窗口,通常用于显示重要的消息、警告、确认框等。在 Magento 2 中,可以使用 Modal 组件来创建模态框。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">以下是一个示例代码,展示如何在 Magento 2 中使用 Modal 组件创建模态框。</p><pre class="brush:as3;toolbar:false"><modal id="example-modal"> <header> <h2 class="modal-title">Example Modal</h2> </header> <content> <p>Content goes here...</p> </content> <footer> <button class="action-primary" type="button" data-role="close">Close</button> </footer> </modal></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在上面的示例中,<modal> 标签用于创建模态框。id 属性指定了模态框的唯一标识符。在 <header> 标签中,我们定义了模态框的标题。在 <content> 标签中,我们定义了模态框的内容。在 <footer> 标签中,我们定义了模态框的底部按钮,这里是一个 “Close” 按钮,通过 data-role="close" 属性来关闭模态框。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,可以通过 JavaScript 代码来打开模态框。例如,以下代码演示如何通过点击按钮来打开上面定义的模态框。</p><pre class="brush:as3;toolbar:false">require([ 'jquery', 'Magento_Ui/js/modal/modal' ], function($, modal) { var options = { type: 'popup', responsive: true, title: 'Example Modal', buttons: [{ text: $.mage.__('Close'), click: function () { this.closeModal(); } }] }; var popup = modal(options, $('#example-modal')); $('#open-modal-button').on('click', function() { popup.openModal(); }); });</pre><p class="p2" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "PingFang SC"; white-space: normal;">在上面的代码中,我们首先加载了<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> jQuery </span>库和<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> Magento_Ui/js/modal/modal </span>模块。然后,我们定义了一个包含模态框属性的对象。在这里,我们将<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> type </span>属性设置为<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> popup</span>,将<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> responsive </span>属性设置为<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> true</span>,这样可以使模态框在不同大小的屏幕上呈现良好的响应式布局。我们还定义了一个按钮,当点击时可以关闭模态框。最后,我们通过<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> modal() </span>函数创建了一个<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> Modal </span>对象,将其绑定到<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> #example-modal </span>元素上,并通过<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> openModal() </span>方法打开模态框。</p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,MassActions 组件是一种常用的 UI 组件,用于在表格中进行批量操作。通过 MassActions 组件,用户可以选择一组数据行,并执行批量操作,例如批量删除、批量更新等。在 Magento 2 中,可以使用 MassActions 组件来实现这样的功能。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">以下是一个示例代码,展示如何在 Magento 2 中使用 MassActions 组件来创建一个批量操作表格。</p><pre class="brush:as3;toolbar:false"><massaction name="listing_massaction"> <action name="delete"> <settings> <confirm> <message translate="true">Are you sure you want to delete the selected items?</message> <title translate="true">Delete items</title> </confirm> <url path="example/delete"/> </settings> <label translate="true">Delete</label> </action> <action name="update"> <settings> <type>update</type> <label translate="true">Update</label> </settings> <optgroup name="status" label="Status"> <option value="1"> <label translate="true">Enabled</label> </option> <option value="0"> <label translate="true">Disabled</label> </option> </optgroup> </action> </massaction></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在上面的示例中,<massaction> 标签用于创建 MassActions 组件。name 属性指定了组件的名称。在组件中,我们定义了两个批量操作,一个是删除操作,一个是更新操作。在删除操作中,我们使用 <confirm> 标签来提示用户确认操作,同时指定了删除操作的 URL。在更新操作中,我们使用 <optgroup> 标签来定义了一个下拉列表,其中包含了两个选项。这些选项可以通过 JavaScript 代码来处理,并在后台执行相应的操作。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,可以通过 JavaScript 代码来处理 MassActions 组件中的操作。例如,以下代码演示了如何在表格中选择一组数据行,并通过 MassActions 组件来执行批量操作。</p><pre class="brush:as3;toolbar:false">require([ 'jquery', 'Magento_Ui/js/grid/massactions'], function($, massactions) { var options = { actions: { delete: { confirm: { title: 'Delete items', message: 'Are you sure you want to delete the selected items?' }, url: 'example/delete' }, update: { type: 'update', field: 'status', label: 'Update', values: { 1: 'Enabled', 0: 'Disabled' } } }, selectors: { row: '[data-role="select-row"]', checkbox: '[data-role="select-row-checkbox"]', container: '[data-role="select-all-container"]', button: '[data-role="action-trigger"]' }, classes: { selected: 'selected' } }; var massActions = new massactions($('#example-grid'), options); });</pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;"><span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">在上面的代码中,我们首先加载了</span> jQuery <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">库和</span> Magento_Ui/js/grid/massactions <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">模块。然后,我们定义了一个包含操作属性的对象。</span></p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,LinkColumn 组件是一种 UI 组件,用于在列表(网格)中显示链接。LinkColumn 组件可以很方便地实现点击链接跳转到指定页面的功能,例如跳转到编辑页面或者查看页面等。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">以下是一个示例代码,展示如何在 Magento 2 中使用 LinkColumn 组件来创建一个产品列表,并在列表中显示一个链接列。</p><pre class="brush:as3;toolbar:false"><listing xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd"> <argument name="data" xsi:type="array"> <item name="js_config" xsi:type="array"> <item name="provider" xsi:type="string">product_listing.product_listing_data_source</item> <item name="deps" xsi:type="string">product_listing.product_listing_data_source</item> </item> <item name="spinner" xsi:type="string">product_columns</item> <item name="exports" xsi:type="array"> <item name="globalRecordId" xsi:type="string">global_record_id</item> </item> </argument> <dataSource name="product_listing_data_source"> <argument name="dataProvider" xsi:type="configurableObject"> <argument name="class" xsi:type="string">Magento\Catalog\Ui\DataProvider\Product\ProductDataProvider</argument> <argument name="name" xsi:type="string">product_listing_data_source</argument> <argument name="primaryFieldName" xsi:type="string">entity_id</argument> <argument name="requestFieldName" xsi:type="string">id</argument> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="update_url" xsi:type="url" path="mui/index/render"/> </item> </argument> </argument> <argument name="data" xsi:type="array"> <item name="js_config" xsi:type="array"> <item name="component" xsi:type="string">Magento_Ui/js/grid/provider</item> </item> </argument> </dataSource> <columns name="product_columns"> <column name="entity_id"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="sortable" xsi:type="boolean">true</item> <item name="sortOrder" xsi:type="number">10</item> <item name="sortDirection" xsi:type="string">asc</item> <item name="label" xsi:type="string" translate="true">ID</item> </item> </argument> </column> <column name="name"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="sortable" xsi:type="boolean">true</item> <item name="sortOrder" xsi:type="number">20</item> <item name="label" xsi:type="string" translate="true">Name</item> </item> </argument> </column> <column name="sku"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="sortable" xsi:type="boolean">true</item> <item name="sortOrder" xsi:type="number">30</item> <item name="label" xsi:type="string" translate="true">SKU</item> </argument> </column> <column name="link" class="Magento\Ui\Component\Listing\Columns\Link"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="sortOrder" xsi:type="number">999</item> <item name="viewUrlPath" xsi:type="string">catalog/product/edit</item> <item name="urlEntityParamName" xsi:type="string">id</item> </item> </argument> <argument name="display" xsi:type="string">link</argument> <argument name="label" xsi:type="string" translate="true">Edit</argument> </column> </columns> </listing></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;"><span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">在上面的代码中,</span>LinkColumn <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">组件被定义为一个名为</span> link <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">的列,并使用了</span> Magento <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">自带的</span> Magento\Ui\Component\Listing\Columns\Link <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">类来实现链接的功能。通过设置</span> viewUrlPath <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">参数,指定了要跳转的页面路径,通过</span> urlEntityParamName <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">参数指定了要传递给目标页面的参数名。最后,通过</span> label <span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "PingFang SC";">参数设置了在列表中显示的链接文本。</span></p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,InsertForm 组件可以用来在一个父表单中插入一个子表单。这个子表单可以包含一个或多个字段,这些字段可以是文本输入框、下拉列表、复选框等等。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">下面是一个示例,展示了如何在 Magento 2 中使用 InsertForm 组件。假设你正在创建一个产品,并希望能够为该产品添加一些相关产品。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">首先,我们需要创建一个用于添加相关产品的 InsertForm 组件。创建一个新的 UI 组件文件 insert_form.xml,并将以下代码添加到其中:</p><pre class="brush:as3;toolbar:false"><insertForm name="related"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="componentType" xsi:type="string">insertForm</item> <item name="formElement" xsi:type="string">container</item> <item name="label" xsi:type="string" translate="true">Related Products</item> <item name="source" xsi:type="string">product_form</item> <<item name="sortOrder" xsi:type="number">20</item>> <item name="dataScope" xsi:type="string">data.related</item> </item> </argument> <settings> <wrapper> <label translate="true">Related Products</label> <collapsible>true</collapsible> <opened>true</opened> </wrapper> </settings> <formElements> <fieldset name="related_products"> <settings> <label> <translate>true</translate> <value>Related Products</value> </label> </settings> <container name="related_products_container" sortOrder="10"> <htmlContent name="related_products_html_content"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="content" xsi:type="string"><![CDATA[ <div class="admin__field admin__field-inline"> <label class="admin__field-label" for="related_products"> <span><%= label %></span> </label> <div class="admin__field-control"> <input type="text" id="related_products" name="related_products" value="<%= related_products %>" /> </div> </div> ]]></item> </item> </argument> </htmlContent> </container> </fieldset> </formElements> </insertForm></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在这个组件的代码中,我们首先定义了一个插入表单组件,名称为 "related",用于添加相关产品。在这个组件的配置项中,我们指定了组件的类型为 insertForm,并设置了一些其他属性,例如标签、数据源、排序顺序等等。</p><p class="p2" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "PingFang SC"; white-space: normal;">在<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> <formElements> </span>中,我们定义了一个<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> <fieldset></span>,并将其名称设置为<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> "related_products"</span>。在这个字段集中,我们添加了一个包含一个文本输入框的容器,用于输入相关产品的<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> ID</span>。</p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,Input 组件用于创建一个文本输入框,可以用来收集用户输入的数据。这个组件的常见用途包括创建表单、过滤器、筛选器等等。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">下面是一个示例,展示了如何在 Magento 2 中使用 Input 组件。假设你正在创建一个产品,并希望能够为该产品添加一个名称字段。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">首先,我们需要创建一个用于输入产品名称的 Input 组件。创建一个新的 UI 组件文件 input.xml,并将以下代码添加到其中:</p><pre class="brush:as3;toolbar:false"><field name="name"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="label" xsi:type="string" translate="true">Name</item> <item name="componentType" xsi:type="string">field</item> <item name="formElement" xsi:type="string">input</item> <item name="dataType" xsi:type="string">text</item> <item name="dataScope" xsi:type="string">name</item> <item name="sortOrder" xsi:type="number">10</item> <item name="validation" xsi:type="array"> <item name="required-entry" xsi:type="boolean">true</item> </item> </item> </argument> </field></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在这个组件的代码中,我们首先定义了一个名为 "name" 的字段,用于输入产品名称。在这个字段的配置项中,我们指定了组件的类型为 field,并设置了一些其他属性,例如标签、数据类型、数据范围、排序顺序等等。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 <item name="validation"> 中,我们指定了一些验证规则,例如必填项。这些规则将确保用户输入的数据符合预期的格式和要求。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">最后,我们需要将这个 Input 组件添加到表单中。假设你正在使用 Magento 2 自带的 form.xml 文件来创建表单,你可以像下面这样添加这个组件:</p><pre class="brush:as3;toolbar:false"><fieldset name="product-details"> <field name="name">...</field> ... </fieldset></pre><p class="p2" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "PingFang SC"; white-space: normal;">在这个代码片段中,我们将<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> <field> </span>组件添加到了一个名为<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> "product-details" </span>的字段集中。这个字段集将包含其他组件,例如价格、描述、图片等等。</p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,ImageUploader 组件用于在前端创建一个上传图片的组件。这个组件可以让用户上传一张或多张图片,并将它们保存到服务器上。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">下面是一个示例,展示了如何在 Magento 2 中使用 ImageUploader 组件。假设你正在创建一个产品,并希望能够上传一张或多张图片。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">首先,我们需要创建一个用于上传图片的 ImageUploader 组件。创建一个新的 UI 组件文件 image_uploader.xml,并将以下代码添加到其中:</p><pre class="brush:as3;toolbar:false"><field name="images"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="componentType" xsi:type="string">imageUploader</item> <item name="elementTmpl" xsi:type="string">ui/form/element/uploader/image</item> <item name="previewTmpl" xsi:type="string">Magento_Catalog/image-preview</item> <item name="label" xsi:type="string" translate="true">Images</item> <item name="sortOrder" xsi:type="number">30</item> <item name="required" xsi:type="boolean">false</item> <item name="uploaderConfig" xsi:type="array"> <item name="url" xsi:type="url" path="catalog/product_gallery/upload"/> </item> <item name="notice" xsi:type="string" translate="true">Allowed file types: jpg, jpeg, gif, png.</item> <item name="dataScope" xsi:type="string">images</item> </item> </argument> </field></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在这个组件的代码中,我们定义了一个名为 "images" 的字段,用于上传产品图片。在这个字段的配置项中,我们指定了组件的类型为 imageUploader,并设置了一些其他属性,例如标签、排序顺序、是否必填等等。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 <item name="uploaderConfig"> 中,我们指定了上传图片的相关配置,例如上传图片的 URL。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">最后,我们需要将这个 ImageUploader 组件添加到表单中。假设你正在使用 Magento 2 自带的 form.xml 文件来创建表单,你可以像下面这样添加这个组件:</p><pre class="brush:as3;toolbar:false"><fieldset name="product-images"> <field name="images">...</field> ... </fieldset></pre><p class="p2" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "PingFang SC"; white-space: normal;">在这个代码片段中,我们将<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> <field> </span>组件添加到了一个名为<span class="s1" style="font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";"> "product-images" </span>的字段集中。这个字段集将包含其他组件,例如名称、价格、描述等等。</p><p><br/></p>
<h5 style="color:red;">系统学习magento二次开发,推荐小册:<a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank">《Magento中文全栈二次开发 》</a></h5> <div class="image-container"> <p> <a style="color:blue;" href="https://www.maxiaoke.com/manual/magento_cn_dev.html" target="_blank"> <img src="https://www.maxiaoke.com/uploads/images/20230218/bb9c82995c24d1105676e02f373755f5.jpg" alt="Magento中文全栈二次开发"> </a> </p> </div> <div class="text-container" style="font-size:14px; color:#888"> <p>本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。</p> </div> <hr><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在 Magento 2 中,ImagePreview 组件用于在前端显示一个预览图片的组件。这个组件可以让用户在上传图片之前预览图片,并可以删除已上传的图片。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">下面是一个示例,展示了如何在 Magento 2 中使用 ImagePreview 组件。假设你已经创建了一个产品,并且已经上传了一些图片。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">首先,我们需要创建一个用于显示预览图片的 ImagePreview 组件。创建一个新的 UI 组件文件 image_preview.xml,并将以下代码添加到其中:</p><pre class="brush:as3;toolbar:false"><container name="image_preview_container" htmlTag="div"> <foreach args="data: currentProduct().images, as: 'image'" render="true" > <block class="Magento\Framework\View\Element\Template" template="Magento_Catalog::product/helper/gallery.phtml"> <arguments> <argument name="data" xsi:type="array"> <item name="image" xsi:type="string">${image.url}</item> <item name="width" xsi:type="number">100</item> <item name="height" xsi:type="number">100</item> <item name="label" xsi:type="string">${image.label}</item> <item name="deleteUrl" xsi:type="url" path="catalog/product_gallery/delete"/> <item name="scope" xsi:type="string">product</item> <item name="position" xsi:type="number">${image.position}</item> </argument> </arguments> </block> </foreach> </container></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在这个组件的代码中,我们使用了一个 foreach 循环来遍历产品的图片列表。对于每张图片,我们创建了一个新的 Magento\Framework\View\Element\Template 块,并将图片的相关信息作为参数传递给它。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在这个块中,我们使用了 Magento_Catalog::product/helper/gallery.phtml 模板来显示图片。这个模板将显示图片的预览图,并提供了一个 "删除" 按钮,以便用户可以删除已上传的图片。</p><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">最后,我们需要将这个 ImagePreview 组件添加到产品页面中。在你的产品布局文件中,添加以下代码:</p><pre class="brush:as3;toolbar:false"><referenceBlock name="product.info.media"> <block class="Magento\Framework\View\Element\Template" template="Vendor_Module::image_preview.phtml"/> </referenceBlock></pre><p class="p1" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; white-space: normal;">在这个代码片段中,我们将 Magento\Framework\View\Element\Template 块添加到了名为 "product.info.media" 的布局块中。这个布局块包含了产品页面中显示图片的相关组件,例如产品主图、缩略图、相册等等。</p><p class="p2" style="margin-top: 0px; margin-bottom: 0px; font-variant-numeric: normal; font-variant-east-asian: normal; font-stretch: normal; font-size: 15px; line-height: normal; font-family: "Helvetica Neue"; min-height: 17px; white-space: normal;"><br/></p><p><br/></p>