我希望有人幫助您瞭解如何在轉換中更改視圖。 我的問題是,我需要動態加載視圖。所以,我創建了一個新的觀點(這似乎是工作):
var viewname = 'view-'+Date.now();
var element = angular.element(document.querySelector('#view-container'));
var scope = element.scope();
var elementString = '<div id="'+viewname+'" ui-view="'+viewname+'" class="viewunique"></div>';
$compile(element.append(elementString))(scope);
這將視圖添加到$view
變量,似乎是工作。
我的問題是:如何在狀態轉換中使用這個新視圖。我嘗試使用$ $過渡到$(),如:
$transitions.onStart({}, function($transition$) {
$transition$.$to().views = {
templateUrl : templateUrl
};
});
其中viewname
是創建視圖的名稱,並templateUrl
是正確的模板。該模板將擁有自己的控制器和東西。這將覆蓋此狀態的視圖,但不會真正起作用或者無法執行任何操作。
不知何故,我想改變過渡到這個狀態的狀態視圖,以便使用動態創建的視圖。這可能嗎? 有人知道如何做到這一點嗎?
也許這可能是任何用途:https://stackoverflow.com/questions/11003916/angularjs-how-do-i-switch-views-from-a-controller-function。它描述瞭如何在控制器中更改視圖。 – DijkeMark