【发布时间】:2017-01-24 05:10:44
【问题描述】:
我有一个根状态app,它定义了主模板。我需要为特定路线使用不同的模板切换此模板:
app.run(($rootScope, $state) => {
$rootScope.$on('$stateChangeStart', (toState, toParams, fromState, fromParams) => {
const rootState = $state.get('app');
if (toState.name === 'app.new') {
rootState.template = require('../../new_layout.tpl.html');
} else {
rootState.template = require('../../layout.tpl.html');
}
}
}
此方法适用于初始应用加载,以及首次应用状态更改(但仅在更改为 new_layout 时)。当我尝试从 app.new 切换到其他状态时,rootState's.template 会发生变化但未被应用(渲染)。
是否有合法的方法来动态替换根状态的模板属性?
【问题讨论】:
标签: angularjs templates angular-ui-router