私は ocLazyLoad ライブラリを使用して、angular javascript/html ファイルを遅延ロードし、次のコード スニペットのようにモジュールに挿入しています。
$routeProvider.when('/Home/Index', {
templateUrl: '/app/Index.html',
controller: 'IndexController',
resolve: {
deps: [
'$ocLazyLoad', function ($ocLazyLoad) {
return $ocLazyLoad.load({}, {
name: 'mix',
files: [
'/app/IndexController.js'
]
});
}
]
}
});
このアプローチでは、ファイル システムから静的な html ファイルを取得します。しかし、私が望むのは、templateUrl:'/Home/Index' を設定することです。したがって、Home コントローラーの Index アクション メソッドが実行され、指定された .cshtml ページが razor でレンダリングされ、Angular ディレクティブを含む html が返されます。
これが私がやりたいことです。かみそりビュー:
<p>
@foreach (var item in new List<int> { 1, 2, 3, 4, 5 })
{
@item
}
</p>
<div ng-controller="IndexController as vm">
<p>{{vm.text}}</p>
<p>{{3 + 3}}</p>
</div>
サーバーからの応答:
<p>12345</p>
<div ng-controller="IndexController as vm">
<p>{{vm.text}}</p>
<p>{{3 + 3}}</p>
</div>
この html に加えて、遅延ロードされた IndexController.js で、angular がその仕事を行います。
それは可能ですか?