猿问

如何编码本地存储中的图像数组?

如何编码本地存储中的图像数组?


我无法将图像数组(base64)放入本地存储。我想在输入中更新(base64)以将其更新到服务器中。请帮帮我,谢谢!


<input type="file" class="file-upload" id="fileUpload">

ready(){

    super.ready();

    this.$.fileUpload.addEventListener('change', (e) => {

        var filesToUpload = this.$.fileUpload;

        var files = filesToUpload.files;

        var maxFiles = files.length;

        var fd = new FormData();


        if (FileReader && files && files.length) {

            for (var i = 0; i < maxFiles; i++) {

                (function(file){

                    var name = file.name;

                    var fr = new FileReader();

                    fr.onload = function(image) {

                        return function(evt) {

                            image.src = evt.target.result;

                        }

                        var arr = [];

                        arr.push(fr.result);


                        if (arr.length == files.length){

                            console.log(arr);

                            localStorage.setItem('arr', JSON.stringify(arr));

                        }

                        // arr.push(fr.result);              

                            // var arr = JSON.parse(localStorage.getItem('arr')) || [];            

                            // arr = fr.result; 

                            // localStorage.setItem('arr', JSON.stringify(arr));


                    }

                    fr.readAsDataURL(file);

                })(files[i]);

            }

        }

    });

}


烙印99
浏览 202回答 2
2回答

繁星淼淼

我认为你应该var arr = [];退出循环

不负相思意

我已经成功了!我喜欢与那些看到它的人分享它。<input type="file" class="file-upload" id="fileUpload"><vaadin-button on-tap="submit">Submit</vaadin-button>submit(e) {&nbsp; &nbsp; e.preventDefault();&nbsp; &nbsp; var list = !!localStorage.getItem('imageData') ? JSON.parse(localStorage.getItem('imageData')) : [];&nbsp; &nbsp; var input = this.$.fileUpload;&nbsp; &nbsp; var files = input.files;&nbsp; &nbsp; var reader = new FileReader();&nbsp; &nbsp; reader.onload = function(e) {&nbsp; &nbsp; &nbsp; &nbsp; // localStorage["imageData"] = reader.result;&nbsp; &nbsp; &nbsp; &nbsp; list.push(reader.result);&nbsp; &nbsp; &nbsp; &nbsp; localStorage["imageData"] = JSON.stringify(list);&nbsp; &nbsp; };&nbsp; &nbsp; reader.readAsDataURL(files[0]);}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答