我有以下代码:
<input onchange="angular.element(this).scope().filesChanged(this)" fileInput="controlFormCtrl.formData.episodeFile">
选择的文件将传递到范围,并且可以通过以下方式在我的控制器中访问:
var thisScope = this;
var rootScope = $root;
var ctrlScope = $scope;
ctrlScope.filesChanged = function(elm) {
thisScope.file = elm.files[0];
}
elm.files有以下数据:
lastModified: 1485109128000
lastModifiedDate: Sun Jan 22 2017 19:18:48 GMT+0100 (CET)
name:"border-image.png"
size:1353
type:"image/png"
webkitRelativePath:""
__proto__: File
但是thisScope.file
未设置。
我该怎么做才能解决问题?
答案 0 :(得分:1)
您需要运行ctrlScope.$apply();
让角度知道thisScope
已更改,但是,这只应在FileReader
加载文件后运行。
我建议使用ngf-select
指令来处理文件上传。