AngularJS:如何在控制器函数中切换视图?

21 浏览
0 Comments

AngularJS:如何在控制器函数中切换视图?

我正尝试使用AngularJS的ng-click功能来切换视图。我该如何使用下面的代码实现此功能?

index.html

 
            click me

controller.js

  function Cntrl ($scope) {
        $scope.someFunction = function(){
            //code to change view?
        }
    }

admin 更改状态以发布 2023年5月22日
0
0 Comments

提供的答案是完全正确的,但我想为任何未来的访问者扩展一下,他们可能希望更加动态地完成它 -

在视图中 -

        Go to edit

在控制器中 -

$scope.changeView = function(person){
    var earl = '/editperson/' + person.id;
    $location.path(earl);
}

与接受的答案相同基本概念, 只是添加了一些动态内容来改进它。如果接受的答案想要添加这个,我将删除我的答案。

0
0 Comments

为了在不同的视图之间切换,你可以直接在index.html文件中更改window.location(使用$location服务!)

            edit
            preview

Controller.js

function Cntrl ($scope,$location) {
        $scope.changeView = function(view){
            $location.path(view); // path not hash
        }
    }

并配置路由器根据位置切换不同的partials(如此处所示:https://github.com/angular/angular-seed/blob/master/app/app.js)。这样做的好处是可以保留历史记录并使用ng-view。

或者,你可以使用ng-include和不同的partials,然后使用ng-switch,如此处所示(https://github.com/ganarajpr/Angular-UI-Components/blob/master/index.html

0