私はコードをコンポーネントルーティングのチュートリアルと少し違うように整理しようとしています。かなり簡単に私はこの構造を持つ私のアプリにしたい。角度1の角度成分を区切ることができません
app.js
-components/
+-settings/
+-settings.js
+-general/
+-generalSettings.js
私は角1.5と角度ルータのthis versionを使用しています:これは
'use strict';
angular.module('admin', [ 'ngComponentRouter', 'settings' ])
.config(function($locationProvider) {
$locationProvider.html5Mode(true);
})
.value('$routerRootComponent', 'admin')
.component('admin', {
templateUrl: 'scripts/app.html',
$routeConfig: [
{path: '/settings/...', name: 'Settings', component: 'settings', useAsDefault: true}
]
})
settings.js
angular.module('settings', [])
.component('settings', {
template: '<h1>settings</h1><ng-outlet></ng-outlet>',
$routeConfig: [
{path: '/general', name: 'GeneralSettings', component: 'generalSettings', useAsDefault: true}
]
})
.component('generalSettings', {
template: '<h2>General</h2>',
controller: GeneralSettingsCtrl,
})
function GeneralSettingsCtrl(){
}
012をapp.jsの作品
しかし、settings.jsファイルから一般設定コンポーネントを削除しようとすると、エラーCannot read property '$routerOnActivate' of undefined
が発生します。
私は依存関係を定義している/注入していると思われます。あるいは、generalSettings(独自のモジュール 'generalSettings'を定義し、それを注入することは機能しているようですが、私はこれを確信していません最高の選択肢です)。私はそれを行うための最善の方法をよく分かりません。 1つのファイルにすべての単一のネストされたコンポーネントを持つことを実際には試みていません。アドバイスをお願いします、ありがとう!