Durandal对话框重新定位不起作用

时间:2016-01-06 22:56:10

标签: javascript durandal

我一直试图重新定位Durandal对话框但没有成功。我正在使用的代码看起来像这样:

this.compositionComplete = function (child, parent, context) {
    dialog.getContext().reposition(child);
};

这是我的对话框模型中的compositionComplete()函数。

一旦被调用,它就不会出错,它什么都不做,对话框也不会重新定位。

我做错了什么?我试图在这里关注Durandal的文档:http://durandaljs.com/documentation/Showing-Message-Boxes-And-Modals.html

1 个答案:

答案 0 :(得分:0)

Dialog.getContext()返回默认上下文,而不是您的自定义上下文。

如果您确实在使用自定义对话框上下文,请尝试使用此示例compositionComplete方法:

this.compositionComplete = function (child, parent, context) {

    var dialogModel = dialog.getDialog(this);
    dialogModel.context.reposition(child);

}

在此版本中,您将获得视图模型对话框模型。它是一个包含对话框相关属性和方法的对象。

在下一行,您将通过对话框模型在自定义上下文中调用“重新定位”。