How can I show you the files already stored on server using Dropzone.js

后端 未结 9 2093
长发绾君心
长发绾君心 2020-12-22 23:39

I Don\'t understand that... call its always undefined

Create the mock file:

var mockFile = { name: \"Filename\", size: 12345 };
         


        
9条回答
  •  無奈伤痛
    2020-12-23 00:12

     import vue2Dropzone from 'vue2-dropzone'
        import 'vue2-dropzone/dist/vue2Dropzone.min.css'
        export default {
            created(){
                let app = this;
                app.getAdvertById()
            },
             data: function () {
                return {
                    advertId: null,
                    advert: {
                        title: '',
                        description: '',
                        confirm: '',
                        files: {},
                        category:'',
                        city:''
                    },
                   
                    adverts: [],
                       dropzoneOptions: {
                        url: 'https://httpbin.org/post',
                        thumbnailWidth: 150,
                        addRemoveLinks: true,
                        maxFilesize: 0.5,
                        dictDefaultMessage: 'Plz add your image here...',
                        headers: { "My-Awesome-Header": "header value" }
                    },
                }
            },
              methods: {
                getAdvertById(){
                    let app = this;
                    let id = app.$route.params.id;
                    app.advertId = id;
                    axios.get('/api/v1/advert/show/' + app.advertId)
                        .then(function (resp) {
                            app.advert = resp.data
                            app.advert.files = resp.data.files
                             for (var i = 0; i < app.advert.files.length; i++) {
                                var mockFile = {id: app.advert.files[i].id, name: app.advert.files[i].file_name, size: app.advert.files[i].size};
                                app.$refs.myVueDropzone.manuallyAddFile(mockFile, '/advert/' + app.advert.files[i].file_name )
                                app.$refs.myVueDropzone.dropzone.options.thumbnail.call(app.$refs.myVueDropzone, mockFile, '/advert/' + app.advert.files[i].file_name)
                                if (app.$refs.myVueDropzone.dropzone.options.maxFiles > 0) {
                                    app.$refs.myVueDropzone.dropzone.options.maxFiles--
                                }
                                }
                        })
                        .catch(function () {
                            alert("Could not load your advert")
                        });
                        //console.log(app.advert.files)
                },
              }
            }
     

提交回复
热议问题