次の作品は完璧です。私のアプリケーションファイルapp.jsで 、私はすぐに私は次のような名前のビューを使用しようとして名前付きビューでコントローラが定義されていません
.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
});
が、私は罰金限り、それらを使用することができ、ルーティング停止しますが、私はインデックスのみのビューではないすべての方法でコントローラをロードする
おそらく問題は名前付きビューについての私の理解ですが、ファイルが正常に追加されたことを警告で表示することができても、home
が未定義の理由を知りたいと思っています。
あなたは親テンプレートに '
'を持っていますか? –明確な説明があります:http://stackoverflow.com/a/33139917/1679310またここでもhttp://stackoverflow.com/a/33119575/1679310 –
@RadimKöhler、申し訳ありませんが、私は2つの答えから明らかなようなものは得られませんでした。そして、質問は、名前付きビューを使用するときに、そのビューにのみスコープが限定された別のcontroller.jsファイルを含める/参照する方法を尋ねます – Sami