我已经开始学习 AngularJS,我正在尝试在按钮点击现有范围时插入新值。 我的页面中有一个按钮,每当我单击该按钮 $scope.options 方法触发时,需要将一些数据添加到作用域变量中才能在 ng-repeat 上使用它。
第一次直接点击添加,因为没有数据。 当我下次单击时,应在现有范围中添加新值。
这是我尝试过的,
$scope.options=function(options){
//$scope.datas=[];
//$scope.datas.push(options);
//$scope.datas = $scope.datas.concat(options)
$scope.datas=options;
console.log($scope.datas);
}
第一次单击按钮时,我的范围如下所示,
$scope.datas=["IARZ1DS099","CATL0DS32","IARZ1DS13","IATL0DS099","CARZ1DS099"];
谁能告诉我该怎么做? 提前致谢!
最佳答案
这是因为您正在分配值$scope.datas=options;
。您需要将值推送到 $scope.datas
数组;
试试这个:
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular.js"></script>
<script type="text/javascript">
var myApp = angular.module('myApp', [])
.controller('MyCtrl', function MyCtrl($scope) {
$scope.options = function (options) {
if (!$scope.datas) {
$scope.datas = ["IARZ1DS099", "CATL0DS32", "IARZ1DS13", "IATL0DS099", "CARZ1DS099"]
} else {
$scope.datas.push("new value")
}
//console.log($scope.datas);
}
})
</script>
</head>
<body>
<div ng-controller="MyCtrl">
<button ng-click="options()">
add Data
</button>
<div ng-repeat="data in datas track by $index">
{{data}}
</div>
</div>
</body>
</html>
关于javascript - 将新数据添加到现有的scope-angularjs中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59320529/