簡體   English   中英

“EventTarget”類型上不存在屬性“result”?

[英]Property 'result' does not exist on type 'EventTarget'?

我在 my.ts 文件中有一個 Javascript,它一直顯示屬性“result”在類型“EventTarget”上不存在???

imageUpload() {

window.onload = function(){   
    //Check File API support zzzz
        (<any>$('#files')).live("change", function(event) {
            var files = event.target.files; //FileList object
            var output = document.getElementById("result");
            for(var i = 0; i< files.length; i++)
            {
                var file = files[i];
                //Only pics
                // if(!file.type.match('image'))
                if(file.type.match('image.*')){
                    if(this.files[0].size < 2097152){    
                  // continue;
                    var picReader = new FileReader();
                    picReader.addEventListener("load",function(event){
                        var picFile = event.target;
                        var div = document.createElement("div");
                        div.innerHTML = "<img class='thumbnail' src='" + picFile.result + "'" +
                                "title='preview image'>";
                        output.insertBefore(div,null);            
                    });
                    //Read the image
                    $('#clear, #result').show();
                    picReader.readAsDataURL(file);
                    }else{
                        alert("Image Size is too big. Minimum size is 2MB.");
                        $(this).val("");
                    }
                }else{
                alert("You can only upload image file.");
                $(this).val("");
            }
            }                               

        });
}
}

在我的 HTML 中,我使用了這個輸入標簽

    <input id="files" type="file" accept="image/*" multiple/>

我的 output 標簽是這樣的

為什么javascript里面有錯誤?? 任何人都知道這是什么問題? 謝謝 !!!

看起來event.target的類型為FileReader ,因此嘗試將event.target強制轉換為特定類型,以告知TypeScript它實際上將具有.result值:

var picFile = <FileReader>event.target;

請參閱(此處)以供參考。

變了

request.onsuccess = function (event) {
            resolve(event.target.result);
        }

對此

request.onsuccess = function (event) {
            var et = <FileReader>event.target;
            resolve(et.result);
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM