html - backbone.js 图片上传

标签 html node.js backbone.js file-upload

我正在使用nodecellar来更好地理解backbone.js,并且我遇到了一个问题,该问题在类似的问题中得到了详细的回答,但是,答案似乎对我不起作用:

我正在尝试做什么。

使用 Nodecellars wineview,我尝试利用拖放功能来上传图像。我已经记下了之前一个很好回答的问题,该问题基本上指出您必须禁用拖拽时的默认行为,因此我的 wine View 中有以下内容:

    events: {
        "change"        : "change",
        "click .save"   : "beforeSave",
        "click .delete" : "deleteWine",
        "drop #profile" : "dropHandler",
        "dragover #profile" : "dragover",
        'dragenter #profile' : 'alertMe'
    },

然后我的拖拽事件如下所示:

    dragover: function(event){
        console.log('drag over event called');
        event.preventDefault();
    },

这很好,并且可以正常工作,因为控制台日志在触发时会被调用。拖动处理程序如下所示:

    dropHandler: function (event) {
        event.stopPropagation();
        event.preventDefault();
        var e = event.originalEvent;
        e.dataTransfer.dropEffect = 'copy';
        this.pictureFile = e.dataTransfer.files[0];


        // Read the image file from the local file system and display it in the img tag
        var reader = new FileReader();
        reader.onloadend = function () {
            $('#profile').attr('src', reader.result);
            $('#picText').html('Picture added, select save to complete changes.')
        };
        reader.readAsDataURL(this.pictureFile);
    }

问题

代码可以工作,但是它不会上传图像或将模型中的详细信息保存到数据库中。所以一旦我离开然后再次选择 Wine ,图像就会恢复到原来的样子。

我对 HTML5 fileReader api 进行了一些研究,但没有太多关于它如何上传或上传到哪里的信息。

这就是我现在所处的位置,我正在向你们寻求有关如何确保模型保存图像网址并将图像上传到图片文件夹的建议。

解决这个问题的最佳方法是什么? HTML 5 fileReader API 是最佳选择吗?

感谢您的反馈。

杰伊

最佳答案

您的函数 dropHandler 中缺少对模型的调用来设置要保存的图像的属性。

关于html - backbone.js 图片上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20314886/

相关文章:

javascript - 在 Backbone 中多次初始化 View

html - CSS font-face 字体大小兼容性问题 firefox

javascript - 单击加载 CSS 元素?

python - Webscraping 使用 Python 返回变量值

javascript - Netlify Lambda 函数无法返回 mysql 数据库查询结果

jquery - Backbone 模型 CORS 获取未发送

html - CSS对不同属性有不同的延迟

javascript - 如何使用 Node Express 从嵌套路由重定向到顶级路由?

javascript - 如何拦截 XMLHttpRequest 并更改请求 URL

backbone.js - 如何从 Backbone .js中的 View 访问模型数据