javascript - 范围变量不可访问(未定义)-AngularJS

标签 javascript angularjs angularjs-scope single-page-application undefined-reference

我在一个 Controller 中设置一个范围变量,然后将位置更改到另一个 View 。然后在新 View 的 Controller 中,范围变量不再可访问,它声明它是“未定义的”。 我在下面添加了问题的简化版本,非常感谢任何帮助。

app.controller('loginController', function ($scope,$location){

   $scope.loginUser = function (user) {

       $scope.userId = "USERID";
       $location.path('/view3');

   }
});

View 3 的 Controller

app.controller('videoListController', function($scope){

alert("UserID: "+$scope.userId);               

});

$scope.userId 的值显示为 'undefined'。我做错了什么?

最佳答案

你也可以在 AngularJS 中使用 $rootScope 进行全局访问

看看这个

app.controller('loginController', function ($scope,$rootScope,$location){

   $scope.loginUser = function (user) {

       $rootScope.userId = "USERID";
       $location.path('/view3');

   }
});

app.controller('videoListController', function($scope, $rootScope){

alert("UserID: "+$rootScope.userId);               

});

关于javascript - 范围变量不可访问(未定义)-AngularJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23063395/

相关文章:

javascript - 无法获取 Promise/ajax 数据以返回父函数

iOS Safari 选择禁用复制/定义/共享..链接

javascript - mmenu:一次只展开一个子菜单(slidingSubmenus:false)

AngularJS 1.5 - 如何在组件上设置两种方式绑定(bind)

php - 如何在将变量加载到 cake php 的页面之前将变量附加到所有 javascript 文件?

javascript - React 中的 HOC 是否不鼓励这样做?

javascript - ng-model 不绑定(bind)属性,但它绑定(bind)对象

javascript - 隔离范围指令对更改没有反应 : angularjs

javascript - 如何通过数组更新 Angular 子范围

javascript - ionic http 获取本地文件给出 http 错误代码 0?