gpt4 book ai didi

javascript - KnockoutJs 组件 - 添加默认类

转载 作者:行者123 更新时间:2023-11-27 23:43:57 24 4
gpt4 key购买 nike

Knockout 为您提供了两种实例化组件的方法,即使用自定义 html 元素或使用组件绑定(bind)。

但是,在尝试设置根组件元素的样式时,我发现了一个小问题。如果您只使用自定义元素语法就可以了,因为您可以为其分配 css 样式 - 但是,如果您随后使用组件绑定(bind),则 css 规则不匹配,因此它们会失败。

理想情况下,我想支持这两种情况,因为它们都有各自的用途。如果我可以通过 knockout 将一个类添加到根组件元素(这只是组件名称),它将解决问题,但阅读文档并不清楚最好在哪里执行此操作。

我已经有了一个自定义模板加载器,它可以从 ajax 调用中检索模板,但这个模板只是根节点的内部 html。

基本上我想要这个:

<my-custom-element>
...
...
<my-custom-element>

变成这样:

<my-custom-element class="my-custom-element">
...
...
<my-custom-element>

有人有什么想法吗?

最佳答案

您可以使用“createViewModel”方法并访问组件中的元素(例如添加一些类):

ko.components.register('some-component', {
viewModel: {
createViewModel: function(params, componentInfo) {
var $element = $(componentInfo.element.children[0]);
// some other code ...
}
},
template: "<div></div>"
});

关于javascript - KnockoutJs 组件 - 添加默认类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33411983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com