这就是我的ui-router的样子:
.state('colleague', {
url: "/colleague",
templateUrl: "views/colleague.html",
resolve: {
typeEmployee: function ($q, $timeout) {
var deferred = $q.defer();
$timeout(function () {
deferred.resolve('manager');
}, 200);
return deferred.promise;
}
,
controller: 'colCtrl'
}
})
问题在于我无法进入同事页面:
<a ui-sref="colleague">colleague</a>
这是控制器代码:
function colCtrl() {
debugger;
console.log('type of employee is:', typeEmployee);
if (typeEmployee === 'colleague') {
console.log('not allowed to view this');
}
if (typeEmployee === 'manager') {
console.log('allowed to view this');
}
}
app.controller('colCtrl', colCtrl);
当我从控制器中获取代码并将其直接粘贴到路由器中时,它可以工作。我需要在代码中修复什么才能使用&#39; controller:colCtrl&#39;在我的路由器?
答案 0 :(得分:2)
您在ggplot(bycountry1, aes(y = country, x = estimate, xmin = estimate - std.error * 2, xmax = estimate + std.error * 2)) +
geom_vline(xintercept = 0, colour = "black", lty = 2) +
geom_point() +
geom_errorbarh(height = 0) +
facet_grid(. ~ term, scales = "free")
内使用controller
。您应该将其移动到状态配置对象的顶级。
resolve
以下是您的示例plunkr。
答案 1 :(得分:0)
问题在于,您需要将Controller视为变量,而不是字符串。
即
controller: colCtrl
不是
controller: 'colCtrl'