以下作品完美无缺。 在我的应用程序文件app.js中,我有像
这样的状态dd(config(b.name)) //b
dd(config(b.name_of_1)) //a
dd(config(b.name_of_3)) //null
但是一旦我尝试使用如下的命名视图。它停止路由
.state('nna.home',
{
url: '/home',
views: {
templateUrl: 'views/home.html'
}
})
//home.html is like
<script src="../controllers/home.js"></script>
<div class="container cf" ng-controller="home">
// my home.js is included correctly in all cases have code like
alert(2); // works
app.controller('home', function ($scope) {
alert(2); // works
});
只要我在索引中加载所有控制器文件,我就可以使用它们但我想只在视图中加载控制器而不是索引
可能问题在于我对命名视图的理解,但我很难知道为什么.state('nna.home', {
url: '/home',
views: {
'v1' : {
templateUrl: 'home.html',
controller: 'home',
resolve: {
deps: function ($ocLazyLoad) {
return $ocLazyLoad.load('homecontroller.js');
}
}
},
}
// my home.js is included correctly in all cases have code like
alert(2); // works
app.controller('home', function ($scope) {
alert(2); // Does not work
});
未定义的原因,即使我可以通过警告显示文件已成功添加
答案 0 :(得分:0)
试试这个:
.state('nna.home',
{
url: '/home',
views: {
'v1': {
templateUrl: 'views/home.html',
controller: 'home'
}
}
})
答案 1 :(得分:0)
这些可能是各州:
.state('nna', {
template: '<div ui-view="v1"></div>',
})
.state('nna.home', {
url: '/home',
views: {
'v1' : {
templateUrl: 'views/home.html',
controller: 'home',
},
}
});
这些链接现在正在运作:
<a href="#/home">
<a ui-sref="nna.home">
检查行动here