【发布时间】:2019-05-24 23:21:13
【问题描述】:
我有这个 html
<div ng-repeat="i in [1,2,3,4,5]">
<input type="file" class="form-control" ng-hide="true"
accept="image/*" image="vm.venueImageList[i].file"
file-upload="vm.venueImageList[i].file"
resize-max-height="720"
resize-max-width="1024"
resize-quality="0.96"
resize-type="image/jpg"
onchange="angular.element(this).scope().vm.preUpload($index);"
ng-image-compress/>
</div>
我想传递 $index 值,但它说 $index 未定义。 有人可以帮我如何将 $index 传递给 angularjs 函数。
这里是函数
preUpload:function(index){
vm.hideLoader[index].value=true;
setTimeout(function () {
if(vm.venueImageList[index].file.compressed.dataURL){
vm.venueImageList[index].url=vm.venueImageList[index].file.compressed.dataURL;
vm.venueImageList[index].file=vm.convertBaseToImage(vm.venueImageList[index].url);
vm.uploadFile(index);
}
},4000);
},
【问题讨论】:
-
为什么不使用
ng-change事件?$index不起作用的原因是因为它是一个 Angular 表达式,并且您正在尝试使用常规 JS 属性。 -
我无法使用 ng-repeat 上传文件,我先尝试过
-
你可以尝试像
{{$index}}这样传递索引 -
不工作{{$index}}
-
@tymeJV
ng-change指令仅与ng-model指令及其控制器一起使用。股票ng-model指令不适用于<input type=file。
标签: javascript angularjs angularjs-ng-repeat angularjs-3rd-party