0

ページをナビゲートするために使用している Twitter ブートストラップのタブ ナビゲーションがあります。 ここに画像の説明を入力

ビューをクリックしtournamentsても更新されませんが、URL が表示されるようになりました#/tournaments:

ここに画像の説明を入力 ここに画像の説明を入力

しかし、URL バーをクリックして Enter キーを押すと、ビューが変わります。

ここに画像の説明を入力

ビルド フォルダーとコンパイル済みフォルダーを使用してプロジェクトをセットアップしました。プロジェクトがビルド フォルダーにある場合、すべて正常に動作します。次に、grunt を使用してファイルを連結および縮小し、コンパイル済みフォルダーに配置します。それが、このように動作し始めるときです。

r.js連結と縮小に使用します(使用してrequire.jsいます)が、プロセス中にエラーは発生しません。ブラウザー ウィンドウを強制的に更新すると、すべての html ビューも正しくコピーされます。

angular は場所の変更に反応しないようですが、active-tabタイトルが灰色の は正しく交換されます。更新されないのはビューだけです。

これが何であるか知っている人はいますか?

タブを独自のディレクティブに入れました:

define(['angular'], function (ng) {
var directives = ng.module('directives', []);

/* top navigation tabs */
directives.directive('tabset', function () {
    return {
        restrict: 'E',
        scope: {},
        transclude: true,
        replace: true,
        template: '<ul class="nav nav-tabs" ng-transclude></ul>'
    };
})
.directive('tab', ['$location', function ($location) {
    return {
        restrict: 'E',
        replace: true,
        scope: {
            route: '@',
            title: '@'
        },
        link: function (scope, element, attrs) {
            var route = attrs.route;

            scope.location = $location;
            scope.active = false;

            scope.$watch('location.path()', function (new_route) {
                scope.active = route === new_route;
            });
        },
        template: '<li data-ng-class="{active: active}">' +
                    '<a href="#{{route}}">{{title}}</a>' +
                    '</li>'
    };
}]);

return directives;
});

私はこのように使用します:

<tabset>
    <tab data-route="/home" data-title="Home"></tab>
    <tab data-route="/tournaments" data-title="Tournaments"></tab>
    <tab data-route="/about" data-title="About"></tab>
</tabset>

この問題は、縮小と連結の後に発生します。

編集:すべてのソースをロードしていないようです:

buildパスで:

ここに画像の説明を入力

compiledパスで:

ここに画像の説明を入力

パス内のリンクの 1 つをクリックすると、build必要なビューに対して http GET 要求が送信されますが、これはパスでは発生しませんcompile

.../build/#/...動作します。 .../compiled/#/...動作しません。

4

0 に答える 0