Angularjs指令中未定义FileReader()

时间:2015-06-19 16:52:20

标签: javascript angularjs user-interface angularjs-directive gruntjs

我正在处理UI上的文件上传功能。基本上,在我的UI页面上,我需要读取文件内容并在用户从他/她的机器中选择本地文件时显示。为此,我用谷歌搜索了一下这个http://plnkr.co/edit/eeQbR65oE8iljm7ueGhX?p=preview例子。它工作正常。但我在我的应用程序中使用它,它没有工作,并给我错误“FileReader”没有定义。

以下是我的例子:

function onReadFile($parse) {
    return {
        restrict: 'A',
        scope: false,
        link: function(scope, element, attrs) {
            var fn = $parse(attrs.onReadFile);

            element.on('change', function(onChangeEvent) {
                var reader = new FileReader();

                reader.onload = function(onLoadEvent) {
                    scope.$apply(function() {
                        fn(scope, {$fileContent:onLoadEvent.target.result});
                    });
                };

                reader.readAsText((onChangeEvent.srcElement || onChangeEvent.target).files[0]);
            });
        }
    };
}

0 个答案:

没有答案