Questions tagged «knockoutjs»

表示与Magento2中的淘汰赛使用相关的问题

1
我如何在adminhtml中的基因敲除渲染后触发代码运行
更新:您可以直接访问视图模型。如果需要触发代码以在渲染后运行,请使用MutationObserver。只要有一个好的示例,我就会发布我的代码。 原始问题: 我们有很多电话打入订单。我正在研究一个模块,该模块会使用webapi / jsonp调用自动在admin->客户->从我们的CRM解决方案中创建数据。这样,magento中的数据不会创建我们已经存储在“主数据库”中的数据重复项。 我剩下要做的一项任务是添加客户的地址。乍一看,这似乎很简单,直到我意识到基因敲除+ magentojs如何在客户表单上呈现一切时,才使我无法捕获模板化元素。在以编程方式删除所有地址并创建新地址之后,我想花些时间来尝试捕获字段集(输入元素)。 如果您想知道为什么要这样做,我的代码的一部分会弹出一个提示,然后说:“嘿,这个人已经存在。您要使用它们吗?” 它将删除您已经输入的所有内容,并以正确的信息替换它。然后呼叫中心对其进行验证,即yadda yadda。 我将分享到目前为止的代码,但是不能正常工作。仅供参考,它扩展了Abstract以捕获“ onUpdate”事件。不要因为试图访问某个收藏夹项目中的收藏夹而责备我。我无法提出一种更好的方法来捕获onUpdate事件并仍然查看所有字段。 我也完全理解哪里出了问题,我只是不知道如何解决它。问题是我假设由.activate()调用生成的元素将在下面立即可用 document.getElementsByClassName('admin__fieldset') 这只是错误的逻辑。理想情况下,我希望能够拉出字段集内容而不必求助于该UI技巧,然后,一旦我完成所有设置,就将其渲染出来。 我不想诉诸jQuery黑客来监视dom更新。 // jsonService variable is available here because it is in the php template render. see // Stti/Customer/view/adminhtml/templates/javascriptinject.phtml define(['ko','jquery','underscore','originalAbstract','uiElement', 'uiCollection'], function(ko, $, _, Abstract, Element, Collection) { "use strict"; var theArray = { formFields: [], …

4
如何在Knockout HTML模板中指定皮肤图像路径?
我正在尝试在Magento_Paypal/web/template/payment/paypal-express.html模板中添加图标图像。图标位于中web/images。我想使用与以下代码等效的代码,该代码适用于电子邮件HTML模板,但不适用于此特定模板: <img src="{{view url='images/icon-paypal.png'}}"> 由于大括号变量在此HTML模板中不起作用,因此如何引用主题web/images目录中存在的图像?

2
在抬头微型购物车中获取产品SKU
我希望能够SKU在Magento 2网站的微型购物车中展示该产品。但是我不确定如何使用KnockoutJS其他产品信息。被调用的模板在这里: vendor / magento / module-checkout / view / frontend / web / template / minicart / item / default.html 并包含如下代码: <strong class="product-item-name"> <!-- ko if: product_has_url --> <a data-bind="attr: {href: product_url}, text: product_name"></a> <!-- /ko --> <!-- ko ifnot: product_has_url --> <!-- ko text: product_name --><!-- /ko --> …

2
Magento 2:如何检测结帐步骤更改
我正在尝试找出检测Magento 2结帐中步骤变化的最佳方法。例如,从发货详细信息到付款,反之亦然。 我已经做了一些挖掘工作,并且vendor/magento/module-checkout/view/frontend/web/js/model/step-navigator.js可以使用next()哪种在继续按钮navigateTo()上触发,以及在用户直接单击checkoutstep时哪种触发-但是两种方法似乎都比较笨拙,无论如何如何,都必须有一种更干净的方法来检测步骤更改以及哪一步。 我希望stepChange()每当结帐步骤发生更改时就会触发的功能或类似功能。 我的问题: 发生结帐步骤更改时,触发我的自定义JS的最佳方法是什么?

2
覆盖主题主题中的模板文件,通过JS(Knockout.js)加载
由于官方的Magento 2.0论坛没有任何帮助,因此我也将在此处发布我的问题。 我们正在基于Magento Blank主题构建自己的主题,并且我们希望对标头中的微型购物车下拉菜单进行2个小的更改。这些文件是通过JS(Knockout.js框架)加载的,但是将文件复制到同一文件夹(Name/name2/web/template/minicart/item/default.html)中我们自己的主题并对其进行编辑不会显示任何更改,因此我们怀疑这种情况下的覆盖行为有所不同。 有人可以指出我们正确的方向吗?谢谢!

1
Magento 2:在UI组件中填充“元素”的内容
列出UI组件的顶级KnockoutJS模板如下所示 <!-- File: vendor/magento//module-ui/view/base/web/templates/collection.html --> <each args="data: elems, as: 'element'"> <render if="hasTemplate()"/> </each> Magento将其翻译为以下原始KnockoutJS代码。 <!-- ko foreach: {data: elems, as: 'element'} --> <!-- ko if: hasTemplate() --><!-- ko template: getTemplate() --><!-- /ko --><!-- /ko --> <!-- /ko --> 无论哪种情况,此模板都将foreach覆盖视图模型的elems属性。 如果我查看RequireJS模块(我认为>),它返回视图模型的构造函数类 vendor/magento/module-ui/view/base/web/js/lib/core/collection.js 我看到该insertChild方法似乎添加到elems属性。 我不太清楚的是:Magento实际在何处调用insertChild以填充elems和/或如何elems填充构成UI组件集合的视图模型?

2
将自定义字符串转换为主题删除模板
我知道这个论坛已经处理过几次了 Magento2本地化Javascript Magento 2-JS模板中的翻译问题 Magento2翻译Javascript(KO)模板文本 我已经在Magento 2.1.9项目中安装了意大利语语言包,并且大多数字符串都已正确翻译。 我在主题中添加了新的翻译词典。 vendor/<Vendor>/<Theme>/i18n/it_IT.csv 在这里,我修改了一些翻译,并添加了主题的新字符串以进行翻译。对于phtml文件中包含的字符串,一切正常。 我在结帐的knokout模板中添加了一些自定义字符串。例如在 <My-theme>/Magento_Checkout/web/template/authentication.html 我加了 <span data-bind="i18n: 'Do you already have an account?'"></span> 然后在我的主题it_IT.csv中: "Do you already have an account?","Hai già un account?" 当然,我清空了缓存,pub / static / ,var / view_preprocessed /,var / generation等。然后我运行了所有命令。 字符串仍然是英语。 我真的必须创建一个新的语言包才能在结帐时翻译一些字符串吗?什么原因? 编辑在线翻译适用于所有字符串。这可能是暂时修复它的方法,但不是最终解决方案。

1
Magento_Ui / js / lib / knockout / extender / bound-nodes RequireJS模块做什么?
Magento 2中的Knockout.js引导程序模块通过define依赖项包含以下模块。 Magento_Ui/js/lib/knockout/extender/bound-nodes 从技术上讲,此模块为ko.applyBindings和ko.cleanNode方法创建包装器。这些包装器将某些视图模型和节点存放在私有javascript中WeakMap,然后返回一个注册表对象,使您可以访问WeakMap。 但是,尚不清楚此功能使最终用户程序员面对哪些功能。这里有人知道Magento_Ui/js/lib/knockout/extender/bound-nodes模块的实际用途吗?还是对Knockout.js内部结构很熟悉以解决问题?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.