0

「compositionComplete」にメッセージを表示する必要がありますが、次のコードは機能しません。

function compositionComplete(view, parent) {
        app.showMessage('This is a message.', 'Demo');
    }

ビューがブロックされ、表示されapp.showMessageませんでした。

Breeze 1.4.1、Durandal 2.0、Knockout 2.3.0、Bootstrap 3.0、jquery 2.0.3、およびシェルで使用していますcacheViews:true

javascript コンソールのみ表示:

Binding plugins/messageBox 
MessageBox {message: "This is a message.", title: "Demo", options: Array[1], __dialog__: Object, selectOption: function…}
 system.js:75

コンソールを確認すると、ko または Q で databind のエラーが存在する場合に問題が発生しました。ただし、これらのエラーを 'app.showMessage' で表示する必要があります。

IE 10、Firefox 23、Google Chrome 29 でテストしましたが、3 つのブラウザーで問題が解決しません。

4

2 に答える 2

0

ここには質問に答えるのに十分な情報はありませんが、明確にするために、コードは適切に構築されたモジュールで機能します

define(['durandal/app'], function (app) {

    function attached() {
        app.showMessage('This is a message', 'demo');
    };

    function compositionComplete() {
        app.showMessage('This is a message', 'demo');        
    };

    var viewModel = {
        compositionComplete: compositionComplete,
        attached: attached
    };
    return viewModel;
});

別の問題があります。コンソールに目を光らせて、それが何であるかを把握してください。

于 2013-09-21T15:27:47.120 に答える