0

有没有办法在应用任何其他绑定之前在视图上执行“数据绑定”功能或“数据绑定”事件?

我需要这种行为,以便我可以初始化我的视图模型上的某些部分,这些部分只能从View中获得。

// this should be called first
<script type="text/javascript" data-bind="event: { load: initialize('data') }"><script>

// this should be called after
<div data-bind="text: initializedValue">
4

1 回答 1

1

您可以先单独绑定脚本元素,然后将视图的其余部分绑定在初始化函数中(在 jsFiddle 中)..

html:

<script type="text/javascript" id="vm1" data-bind="event: { load: initialize('data') }"></script>
<div id="vm2">
    <div data-bind="text: initializedValue">1</div>
</div>

js:

function MyViewModel() {
    self=this;
    self.initialize = function(data){
        self.initializedValue=ko.observable('2');
        ko.applyBindings(mvm,document.getElementById('vm2'));
    }
}
var mvm=new MyViewModel();
ko.applyBindings(mvm,document.getElementById('vm1'));
于 2013-10-04T18:01:38.440 回答