0

基本的なルートだと思っていたものを使用しましたが、私は好きではありません。

    .config([
        '$routeProvider',
        function($routerProvider){
            $routerProvider
                .when('/view',{
                    templateUrl: 'view-profile.html',
                    controller: 'UserProfileController'
                })
                .when('/edit',{
                    templateUrl: 'edit-profile.html',
                    controller: 'UserProfileController'
                })
                .otherwise({
                    redirectTo: '/view'
                });
        }
    ]);

上記は機能します。ブラウザーに /view または /edit を手動で入力すると、読み込まれて機能します。

ページに UI を切り替えるためのボタンがあります。ボタンを押すと、新しいビューが表示され、すぐに元に戻ります。私は /view にいて、クリックして編集するパスを変更すると、編集に移動してから表示に戻ります。ただし、編集を開始し、クリックして表示に変更すると、固執します。その後、編集に戻ることができます。ページが表示されたときのようです。

ビューを変更する方法は次のとおりです

    this.viewProfile = function () {
        $location.path('/view');
    };
    this.editProfile = function () {
        $location.path('/edit');
    };

ボタンは次のようになります

オン/ビュー

<button ng-click="user.editProfile()">Edit My Profile</button>

/編集時

<button ng-click="user.viewProfile()">Save</button>

ありがとう!

4

2 に答える 2

0

ここには2つのオプションがあると思います。ボタンの代わりに、href タグを使用して行きたい場所を指すことができます

<a href="/edit">Edit My Profile</a>

もう 1 つのオプションは、$location.path() の後に $scope.$apply() を使用することです。それはうまくいくと思いますが、最初のオプションの方が良いと思います。

于 2016-05-19T19:49:21.157 に答える