Durandal撰写动态加载视图模型

时间:2014-01-27 23:50:09

标签: .net durandal

我需要根据单击的菜单按钮动态加载div中的viewmodel。

我在我的HTML中有这个

<div data-bind="compose: activeScreen"></div>   

这是我的Javascript

define(['services/logger', 'durandal/system','require'],
    function (logger, system, require) {       
        var title = 'Development Plan';
        debugger;

        var VM1 = require("signoff");

        var vm = {
            activate: activate,                        
            activeScreen : VM1
        };            


        return vm;      



        function activate() {
            return false;
        }     
});

但.....毫不奇怪,它不起作用!!

请帮我解决这个问题

1 个答案:

答案 0 :(得分:1)

使activeScreen成为可观察的(例如:ko observable),然后在菜单上单击更改其值。 Durandal很多地依赖淘汰赛(或者在自己的可观察的lib上),所以玩淘汰赛以了解如何运作,然后跳进Durandal。

顺便说一下,如果你只需要在compose中加载一个html,你就不要通过require显式加载它,只需将完整路径传递给activeScreen,compose绑定将处理加载和缓存等。