我正在尝试创建一个指令,点击按钮我需要添加文本框但是当我添加2,3文本框时它们都共享相同的范围。
如何在范围内隔离范围??
http://jsfiddle.net/A8Vgk/584/
代码::
angular.module('myApp', []).directive( 'test', function ( $compile ) {
return {
restrict: 'E',
scope: { text: '@' },
template: '<p ng-click="add()">Click me </p>',
controller: function ( $scope, $element ) {
$scope.add = function () {
var el = $compile( "<input type='text' ng-model='user.name' value='hello-World!'>" )( $scope );
$element.parent().append( el );
};
}
};
});
答案 0 :(得分:1)
尝试$scope.$new()并将文本框绑定到这个新创建的范围:
var el = $compile( "<input type='text' ng-model='user.name' value='hello-World!'>" )( $scope.$new() );