当前位置: 首页 > 知识库问答 >
问题:

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

年凯康
2023-03-14
 <div ng-controller="Cntrl">
        <div ng-click="someFunction()">
            click me
        <div>
    <div>

Controller.js

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

共有1个答案

公良奇
2023-03-14

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

<div ng-controller="Cntrl">
        <div ng-click="changeView('edit')">
            edit
        </div>
        <div ng-click="changeView('preview')">
            preview
        </div>
</div>

Controller.js

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

并根据位置配置路由器切换到不同的部分(如下面所示https://github.com/angular/angull-seed/blob/master/app/app.js)。这将有历史和使用ng-view的好处。

 类似资料:
  • 问题内容: 我正在尝试使用AngularJS 的 ng-click 功能来切换视图。我将如何使用下面的代码来做到这一点? index.html controller.js 问题答案: 为了在不同的视图之间切换,您可以直接在index.html文件中更改window.location(使用$ location服务!)。 Controller.js 并配置路由器以根据位置切换到不同的部分(如此处所示h

  • 问题内容: 我单击时有一个下面的按钮,显示一个小的弹出窗口,如通知 我的意图是每隔几秒钟显示一次此弹出窗口,而不用单击按钮,而是从AngularJS控制器显示。 尝试以下解决方案 还包括脚本 使用这样的指令 我看到一个错误“对象没有方法弹出窗口” 问题答案: 伪指令用于DOM操作: 和指令

  • 问题内容: 是否可以在AngularJS控制器中创建 HTML 片段并将该HTML显示在视图中? 这是因为需要将不一致的JSON Blob转换为嵌套的对对列表。因此,在控制器中创建了 HTML ,现在我希望显示它。 我已经创建了模型属性,但是如果不打印 HTML 便无法在视图中呈现它。 更新资料 看来问题出在将创建的HTML角化为引号内的字符串而引起。将尝试找到解决此问题的方法。 控制器示例: 示

  • 问题内容: 我需要在Angular js中的另一个控制器中调用函数。如何可能的方式请提前帮助我 代码: 问题答案: 控制器之间的通信通过+ / + 方法完成。 因此,在您的情况下,您想在Controller“Two”中调用Controller“One”的方法,执行此操作的正确方法是: 在被调用时,您可以发送任何数据作为第二个参数。

  • 问题内容: 是否可以在AngularJS控制器中创建 HTML 片段并将该HTML显示在视图中? 这是因为需要将不一致的JSON Blob转换为嵌套的对对列表。因此,在控制器中创建了 HTML ,现在我希望显示它。 我已经创建了一个模型属性,但是如果不打印 HTML 便无法在视图中呈现它。 更新资料 看起来问题出在将创建的HTML角化为引号内的字符串而引起。将尝试找到解决此问题的方法。 控制器示例

  • 问题内容: 已经为此苦苦挣扎了一段时间,似乎永远也找不到直接的答案。 任何帮助表示赞赏! 问题答案: 如果您在导航控制器中: 或者,如果您只想呈现一个新视图: