javascript - Angular 将输入值传递给 $rootScope 变量

标签 javascript html angularjs angularjs-rootscope

我遇到了这样的情况:我想使用 $rootScope 变量并使用输入字段中输入的值更新其值。我的情况代码缩短为 DEMO :

HTML:

<div ng-controller="MyCtrl">
    <input type="text" ng-model="foo" placeholder="Enter something" />
    <input type="button" ng-click="doSomething()" value="Send" ng-disabled="foo == null" />
</div>

脚本:

var myApp = angular.module('myApp', []);

function MyCtrl($scope, $rootScope) {
    $rootScope.foo = null;
    $scope.doSomething = function () {
        alert("Hello, " + $rootScope.foo);
    }
}

任何有关如何将输入值传递给 $rootScope 变量的建议都很棒!

最佳答案

虽然不推荐,但如果您愿意,仍然可以按照以下方式进行

<div ng-controller="MyCtrl">
    <input type="text" ng-model="foo" placeholder="Enter something" ng-change="onFooChange()" />
    <input type="button" ng-click="doSomething()" value="Send" ng-disabled="foo == null" />
</div>

脚本

var myApp = angular.module('myApp', []);

function MyCtrl($scope, $rootScope) {
    $rootScope.foo = null;

    $scope.onFooChange = function(){
     $rootScope.foo = angular.copy($scope.foo);
    }

    $scope.doSomething = function () {
        alert("Hello, " + $rootScope.foo);
    }
}

当文本字段的值发生更改时,调用onFooChange函数并将该值存储到$rootScope中。

关于javascript - Angular 将输入值传递给 $rootScope 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34201652/

相关文章:

html - 样式提交按钮 'error' ?

php - 如何在php中以表的形式显示同一数据库中选定表中的数据?

angularjs - 使用 REST 进行 Angular http 获取

javascript - Rails 4 中汉堡包 jquery 按钮代码在哪里?

javascript - 当我打印我的网站时,有什么方法可以使我的谷歌地图相同

javascript - 使用 Node Express JS 在 AngularJS 中重复 ajax 调用

javascript - 什么是快速收集页面上最常用词的方法?

javascript - 基于另一个复选框复制复选框组的状态

javascript - Angularjs + Typescript,如何将 $routeParams 与 IRouteParamsService 一起使用

javascript - 如何第一次获得正确的div innerHeight?