组件与小部件


10

在Magento 2中,组件和小部件之间有什么区别?例如,有一个模态组件和一个模态小部件,它们看起来都在做相同的事情。

零件

所述模态UI组件实现了在主窗口的顶部打开一个辅助窗口。它使用模式小部件。

小部件

所述的Magento模态小部件实现了在主窗口的顶部打开一个辅助窗口。

可以使用几行JS来初始化该小部件,其中,由于该组件需要许多行XML,并且仍然使用该小部件。那么,为什么有人会使用XML方法呢?

Answers:


6

可以用几行JS初始化窗口小部件,其中,由于组件需要许多行XML,并且仍在使用窗口小部件。那么,为什么有人会使用XML方法呢?

用户界面组件系统允许开发人员将许多不同的RequireJS模块打包为KnockoutJS视图模型构造函数(带有关联的“远程” Knockout.js模板),然后在Magento页面的HTML源代码中使用这些视图模型特殊的Knockout.js范围绑定。每个UI组件还与一组服务器端数据相关联。最终目标是创建一个复杂的UI功能,这不仅是一个巨大的凌乱的javascript文件,而且最终用户可以<uiCompnent name="foo"/>在其布局XML中包含简单的内容。

因此,您认为模态窗口小部件更容易入门。但是,如果您要构建复杂的UI组件,并且希望复杂的UI组件包括模式功能,则可以引入模式UI组件。

至少-这是我目前对情况/系统的理解。如果您有兴趣,可以在我的UI组件系列(自链接)中找到更多上下文


如果我要执行CRUD任务,则应与模型数据示例模态表单组件相关联,我应该使用模态组件而不是模态小部件!对 ?但是似乎更难以实施
mrtuvn

感谢您的回答和链接@ alan-storm我一定会检查出来的。这似乎很难实现,但我认为对于大量工作而言,这样做更有意义。我会花几天时间寻求更多答案,然后再接受一个。
本·克鲁克
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.