1
각도를 학습하고 테스트 페이지에서 동적 바인딩을 구현하려고했습니다. 내 목표는 입력 상자를 구현하는 것이고, 각각은 동적으로 얻은 변수 이름 중 하나에 바인딩됩니다.상속 된 범위 변수에 대한 각도 바인딩
루트 범위에서 결과 배열을 선언하지 않으면 모든 반복에 대해 결과 배열이 만들어지고 각 상자 아래에 자체 결과 내용이 표시됩니다.
그러나 만약 내가 decalre 결과 루트 범위에서, 그리고 이후로 내가 다시 redeclare - 섀도 잉 적용해야하며 루트 범위의 배열에있는 변수에 각 상자를 바인딩해야합니다. 하지만 대신 각 범위에서 루트 범위의 배열 내용 만 볼 수 있으며 입력을 변경하는 동안 변경되지 않습니다. 도움을 주시면 감사하겠습니다.
HTML :
<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="index.js"></script>
<body ng-app="app" ng-controller="main" > <!--ng-init="results = [{'TEST': 1}]" -->
<div>
<p>Name: <input type="text" ng-model="name"></p>
<p ng-bind="name"></p>
<input type="button" value="Clickme" ng-click="clickfnc()">
<input type="button" value="Dump" ng-click="dump()">
<input type="button" value="Pop" ng-click="remove()">
</div>
<div ng-repeat="x in params">
<p>Name: <input type="text" ng-model="results[x.name]"></p>
<p ng-bind="results[x.name]"></p>
<p>{{x.name}}</p>
<p>{{results}}</p>
<p>{{params}}</p>
</div>
<hr>
<p ng-bind="results"></p>
<hr>
</body>
</html>
하는 index.js :
var app = angular.module('app', []);
app.controller('main', function ($scope)
{
$scope.clickfnc = function()
{
console.log('click');
$scope.params = [
{
name: 'ACCOUNT'
},
{
name: 'AMOUNT'
}
];
};
$scope.dump = function()
{
console.log($scope.results)
};
$scope.remove = function()
{
$scope.params.pop();
}
});
감사합니다! 내 실수는 다음 번에 물어보기 전에 더 좋아 보일 것입니다. – user3177112