只能访问数组的第一个元素

时间:2016-04-17 23:43:21

标签: javascript html angularjs

我的代码需要2个文件并将内容放入数组中:

$scope.array = [];
$scope.upload = function(event){
var files = event.target.files;

    for (var i = 0; i < files.length; i++) {
        var file = files[i];
            var reader = new FileReader();
            reader.onload = $scope.loaded; 
            reader.readAsText(file);
    };
};
$scope.loaded = function(e){
   $scope.$apply(function() {
      $scope.array.push(e.target.result);
});

如果数组包含:[&#34; 1 2 3&#34;,&#34; 4 5 6&#34;]

我键入:

$scope.arrayOne=$scope.array[0].split(' ')

输出为:[&#34; 1&#34;,&#34; 2&#34;,&#34; 3&#34;]

但如果我输入:

$scope.arrayTwo=$scope.array[1].split(' ')

我收到错误,&#34;未捕获的TypeError:无法读取属性&#39; split&#39;未定义&#34;

但是,我可以通过HTML分割第二个元素:

{{array[1].split(' ')}}

输出:[&#34; 4&#34;,&#34; 5&#34;,&#34; 6&#34;]

编辑:通过添加

来管理修复它
$scope.$watch('array', function(){

面前
$scope.arrayOne = $scope.array[1].split(' ');

感谢评论中的帮助。

0 个答案:

没有答案