我有一个简单的textarea控件,
<div ng-controller="TodoCtrl">
<textarea ng-model="myArray"></textarea>
</div>
和一个字符串数组的模型:
function TodoCtrl($scope) {
$scope.myArray = [
"something1",
"something2",
"something3",
];
}
我试图让每个条目都在它自己的行上:
something1
something2
something3
对于额外的功劳,我希望将文本重新分解为模型方面的数组。
我已尝试了一些内容,包括ng-list,custom directives,自定义过滤器和ng-repeat,但还没有找到任何地方。
小提琴示例:
答案 0 :(得分:1)
你想要的是拥有两个vars。基本上你的textarea是一个文本字符串。因此,如果您需要一个数组,那么在字符串模型上设置一个观察器。
http://jsfiddle.net/U3pVM/8165/
$scope.myStr = 'aaaa\nbbbb\nccccc';
$scope.$watch('myStr', function(myStr){
$scope.myArray = myStr.split('\n');
console.log('$scope.myArray', $scope.myArray);
});
答案 1 :(得分:0)
我不确定我理解你想要实现的目标。小提琴中没有文字区域。
您可以对阵列进行处理,以在每个字符串的末尾添加新的行字符。不确定这有帮助吗?
$scope.myArr = ['111\n', '222\n', '333\n']
http://jsfiddle.net/U3pVM/8161/
你的小提琴有很多信息,也许让它变得更简单?显示输入和输出。
编辑:
是输入输出吗?如果仅用于输出,您可以执行以下操作: http://jsfiddle.net/U3pVM/8164/