【问题标题】:Durandal - prevent binding cause issue with compositionComplete of subViewsDurandal - 防止子视图的组合完成导致绑定问题
【发布时间】:2015-11-17 19:25:39
【问题描述】:

我在 Durandal 项目工作。

在我的项目中,我需要控制绑定时间。即,我想阻止绑定,并在需要时手动进行。

    define(function organizationView(require) {

var organizationDetails = require('views/organization/organizationDetails');

function myVM() {

    var vm = {

        organizationDetails: new organizationDetails(),
        binding: function () { return { applyBindings: false } }

    };



    http.get(myUrl).done(function initLookupList(lookup) {
        try {
            //my code...

            that.binding = function () { return { applyBindings: true }; };
            binder.bind(that, $('#organization')[0], that, that);
        }
        catch (err) {
            global.treatError(err);
        }
    });
    return vm;

}
return myVM;
});

HTML 方面:

<div data-bind="compose: { model: organizationDetails, view:'views/organization/organizationDetails.html'}"></div>

我的问题是:Durandal 没有到达组合子视图(organizationDetails)的完整功能!!!

如果我不尝试控制绑定时间,即如果我取消代码:“apply-binding=false”frp,父视图 - 它运行良好。

但我必须这样做……那我该怎么办?

【问题讨论】:

    标签: javascript knockout.js requirejs durandal composition


    【解决方案1】:

    您可以使用父模块的compositioncomplete函数。

    例如

    在“shell”模块中,您正在编写“nav”视图,您可以在“shell”合成完成函数中编写绑定逻辑。

    【讨论】:

    • 你能给demo-project吗?这个问题也跟我有关。
    • 你可以查看johnpapa的“Hot Towel SPA”模板架构。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-01
    • 2014-05-20
    • 2015-09-19
    • 2014-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多