5

を記述せずに ng-view を使用することは可能ですかrouteProvider、つまり、マークアップ部分にルートを含めることによって (ロジックとビューを混在させることは最良の設計ではないことを理解していますが、実際には条件付きテンプレートであるため、この状況ではおそらく受け入れられます) . 私のルート プロバイダーには、Angular ディレクティブにハード コーディングされたテンプレートがあります。

spaceJam.config(function($routeProvider, $locationProvider) {
    $routeProvider.
         when('/images', {
            template: '<ng-my-image-editor></ng-my-image-editor>'
            }).
        when('/videos', {
            template: '<ng-my-video-editor></ng-my-video-editor>'
            }).
        when('/calendar', {
            template: '<ng-my-calendar-editor></ng-my-calendar-editor>'
            }).
        otherwise({redirectTo: '/images'}) ;

    $locationProvider.html5Mode(false);

});

代わりに、次のようなものがあります。

<ng-view>
    <ng-view-selection when="/images" default><ng-my-image-editor></ng-my-image-editor></ng-view-selection>
    <ng-view-selection when="/videos"><ng-my-video-editor></ng-my-video-editor></ng-view-selection>
    <ng-view-selection when="/calendar"><ng-my-calendar-editor></ng-my-calendar-editor></ng-view-selection>
<ng-view>

これに対する別のアプローチはありますか?

4

1 に答える 1