javascript - 如何将 Angular $scope 变量传递给 JavaScript 普通变量

标签 javascript angularjs angularjs-scope

这是我的 Angular $scope.variable。

$scope.users = {
                id : '',
                fullName : '',
                email : '',
                profile_picture_url : ''
            }

            $scope.comments = {
                commentId : '',
                created_by_current_user : '',
                created_by_admin : '',
                user_has_upvote : '',
                creator : '',
                fullName : '',
                content : '',
                created : '',
                modified : '',
                upvote_count : '',
                profile_picture_url : '',
                pings : '',
                parent : '',
                uniqueId : '',
                postId : ''

            }

我只是从 HTTP 服务获取对象数组并将其存储为 Angular 变量。这是我的 Angular Controller

$scope.getByPost = function(postId) {
                console.log('getpost')
                $scope.user = $cookieStore.get('currentApp');
                console.log($scope.user.uniqueId);
                $scope.getUsers();
                appService.getUserByPost($scope.user.uniqueId, postId)
                        .then(function(data) {
                            console.log("Comments" + data)
                            $scope.comments = data;
                        });
            };

            $scope.getUsers = function() {
                console.log('getpost')
                appService.fetchAllUsers().then(function(data) {
                    console.log("Users" + data)
                    $scope.users = data;
                }, function(error) {
                    console.log('Error ' + error)
                })
            };

现在我需要将这些变量传递到另一个普通的 JavaScript 文件以进行 DOM 操作。我确实喜欢这个。

 var dom_el = document.querySelector('[ng-controller="appController"]');
       var ng_el = angular.element(dom_el);
       var ng_el_scope = ng_el.scope();
       var commentsArray = ng_el_scope.comments;
       var usersArray = ng_el_scope.users;

不工作。请告诉我解决这个问题。

最佳答案

将当前 Controller 中的值保存到 $rootscope,如下所示 $rootscope.users = data; 使用 $rootscope.requiredValue=$rootscope.users;在其他 Angular js 页面中。

关于javascript - 如何将 Angular $scope 变量传递给 JavaScript 普通变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43344060/

相关文章:

javascript - 以 Angular 捕获焦点事件

javascript - 等效于 javascript 或 nodejs 中 Python 的 help()

angularjs - 在 angularjs 中使用 debounce 延迟代码

javascript - SQL 删除不起作用

javascript - Laravel 和 Angular(JS),Angular 从哪里开始?

AngularJS:在 ng-repeat 生成的范围中设置变量

javascript - 仅当使用 AngularJS 从服务器发现新数据时才自动刷新数据

javascript - AngularJS - 日期在 IE8 中不转换

javascript - 尽管配置,用户池仍允许两个用户使用相同的电子邮件

JavaScript 数组删除特殊