簡體   English   中英

Ember.js-如何從初始化程序過渡到另一條路線?

[英]Ember.js - How can I transition to another route from an initialiser?

我正在使用初始化程序連接到套接字服務器。 經過一段設定的時間后,我想重定向到另一條路由(處理錯誤)。

我如何從初始化程序中執行此操作?

當前代碼如下:

/* Socket Initializer */
export default {
    name:   'Socket',
    initialize: function(Container, Application) {

        Application.deferReadiness();       

        var IO = Container.lookup('socket:main');

        IO.connect({
            reconnectionDelayMax: 1000
        });


        IO.socket.on('connect', function(){
            Application.advanceReadiness();
        });


        var RetryCounter = 0;

        IO.socket.on('connect_error', function(Error) {

            if (RetryCounter == 2) {


                //this.transitionTo('development');
                //Application.transitionTo('development');
                //Container.transitionTo('development');

                // None of the above work.

            }
            RetryCounter++;  
        });
    }
};

您可以從容器中獲取路由器,然后從容器中調用transitionTo。

var router = container.lookup('router:main');
router.transitionTo('foo');

人為的示例: http : //emberjs.jsbin.com/bukuvuho/3/edit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM