自定义元素不像组件绑定那样工作

Knockout component w/ custom element not working similar as component binding

本文关键字:工作 绑定 组件 元素 自定义      更新时间:2023-09-26

使用knockoutjs;我有一个自定义组件,当用作组件绑定时可以工作,但当用作自定义元素时就会失败。

见此处提琴手:http://jsfiddle.net/fmgbfthq/4/

为什么当使用组件绑定时,它按预期工作,但当使用自定义元素时却不是?这不应该完全一样吗?

<!-- params.loads is coming in as a function -->
<metric params="value: loads()"></metric>
<!-- params.loads is coming in as a value -->
<div data-bind="component: {
        name: 'metric',
        params: {
                value: loads()                   
        }
    }"></div>

问题是你一直在用ko.observable()重新包装你的值,而params.value 已经是observable

试试这个:

viewModel: function(params) {
    this.value = params.value;
    this.format = params.format;
},

看到小提琴