【问题标题】:ng-view: pass data from one view to anotherng-view:将数据从一个视图传递到另一个视图
【发布时间】:2015-01-10 00:52:11
【问题描述】:

这是我对 stackoverflow.com 的第一个问题,但我从几天以来一直在关注它。

我正在使用带有 express 框架的 nodejs 和使用节点路由来开发 Web 应用程序,我已经完成了大部分工作。但是这些天我遇到了一个问题,在客户端我使用 angularjs 进行双向数据绑定和 angularjs 的其他有用功能。

我需要使用 angularjs 进行客户端路由,这样我必须在单击按钮时将一些对象(包含用户信息)传递到另一个页面.. 每当管理员单击“注册”按钮时,该页面应重定向到相应的页面(取决于用户类型),并将用户信息传递到另一个页面,该页面会自动填充到目标的注册表单中。

我曾尝试使用服务在控制器之间进行通信,但在另一个页面上,数据要么未定义,要么已初始化为 NULL。

我很高兴得到适合我的解决方案的答案

我不能发截图,因为没有最低声望:((

提前致谢:))

【问题讨论】:

    标签: javascript angularjs node.js


    【解决方案1】:

    如果应用程序在将数据从一个视图发送到另一个视图时没有刷新,您可以将数据存储在$rootscope。

    例子:

    angular.module('myApp').controller('myCtrl', function($scope, $rootScope) {
        $rootScope.test = "TEST";
    });
    
    angular.module('myApp').controller('myCtrl2', function($scope, $rootScope) {
        $scope.value = $rootScope.test;
        alert($scope.value);
    });
    

    【讨论】:

    • 在使用角度视图时,我们是否需要在局部视图中包含脚本和 css 或由父视图加载
    • 由父视图自己加载。
    【解决方案2】:

    所以我不知道您的应用是如何构建的,但您可以让您的应用维护一种状态配置,然后将信息保存到这些视图共享的公共变量中。基本上是一个具有多页错觉的单页应用程序。查看 Angular-UI。

    $stateProvider
    .state('home', {
      url: "/",
       views: {
        "viewONE": {
          controller: 'p1Controller',
          template: '<p>Some stuff</p>'
        },
        "viewTWO": {
          controller: 'p2Controller',
          template: '<span>Some more stuff</span>'
        },
        [AND SO ON]
      }
    })
    

    【讨论】:

    • 我能有一些关于 angular-ui 的示例教程吗??
    猜你喜欢
    • 2015-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-20
    相关资源
    最近更新 更多