Javascript 如何将输入值输入到角度';s$范围?

Javascript 如何将输入值输入到角度';s$范围?,javascript,angularjs,angularjs-scope,angularjs-ng-model,Javascript,Angularjs,Angularjs Scope,Angularjs Ng Model,我是个新手,我正在尝试做一些非常基本的事情。这是视图的一部分(所有角度文件都添加到其他位置): 我想做的很简单。我想使用输入值。我尝试了类似于$scope.data=[]和$scope.data.push($scope.id)的方法来创建一个包含作用域值的数组,但没有成功。当我试图显示该值时,控制台上显示了一个“未定义” 你们知道吗 编辑:视图还有一个带有ng click指令的按钮,该指令触发控制器的功能,我尝试在其中获取我的值。该值将自动添加到$scope,但您必须在输入元素中键入一些内容 也

我是个新手,我正在尝试做一些非常基本的事情。这是视图的一部分(所有角度文件都添加到其他位置):

我想做的很简单。我想使用输入值。我尝试了类似于
$scope.data=[]
$scope.data.push($scope.id)
的方法来创建一个包含作用域值的数组,但没有成功。当我试图显示该值时,控制台上显示了一个“未定义”

你们知道吗


编辑:视图还有一个带有
ng click
指令的按钮,该指令触发控制器的功能,我尝试在其中获取我的值。

该值将自动添加到
$scope
,但您必须在
输入
元素中键入一些内容

也就是说,你需要触发一些东西来获得这个值。例如,您在此处有注释
//在此处获取范围值
——这将在控制器初始化后立即触发,并且不再调用;所以,在那个时候它将记录为未定义。但是,如果将其设置为按钮单击或其他方式,您将看到它可用:

<div ng-controller='ctrl'>
   <input type='text' ng-model='id'>
   <button ng-click="logId()">Log ID</button>
</div>

现在在输入中键入一些内容并单击按钮。

如果您确实需要在阵列中使用它,只需在控制器中执行以下操作:

module.controller('ctrl',['$scope', function ($scope) {
    $scope.logId = function() {
        console.log($scope.id);
    }
}]);
$scope.data=[0]

而在HTML中呢

它将自动填充该数组值。当您在输入中键入内容时,id将始终位于数组的第一个位置

或者你可以用对象来处理它 在控制器中:
$scope.data={}


在HTML

中,您是否在
输入中键入了任何内容?
?我键入了一些内容,并且(我没有在原始帖子上写下它)我有一个按钮,带有一个链接到控制器中某个函数的
ng click
指令。编辑问题的标题,以便它说明您面临的问题,“只是想用AngularJS的ngModel做一些基本的事情”告诉我什么都没有。你不会问你的父母“我想用炉子做饭”…“好吧,问题是什么?你在做什么?有什么问题吗?”。我会在问题中添加
ng单击
。按原样发布代码“-不是一个密切的代表。。。小错误可能看起来像大问题。查看我的博客文章。它可能对你有用:嗯,我的错,我忘记提了。我在视图上有一个按钮,带有一个链接到控制器中某个函数的
ng click
指令来触发它。我会把它添加到原来的帖子中!你能提供一个或那个不起作用的答案吗?我提供的代码工作得很好:@ArhyaaI在主视图中从
angular.min.js
切换到
angular.js
,并且工作正常。
<div ng-controller='ctrl'>
   <input type='text' ng-model='id'>
   <button ng-click="logId()">Log ID</button>
</div>
module.controller('ctrl',['$scope', function ($scope) {
    $scope.logId = function() {
        console.log($scope.id);
    }
}]);