日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

如何在 Vue 表單中處理圖片

瀏覽:11日期:2022-10-08 16:07:22
問題:

我在 Vue 中有一個 form 表單,用于上傳博客帖子,它有標題、正文、描述、片段和圖片等范圍。所有的一切都是必需的。我在 Express 中設置了一個 API 來處理這個問題。我在 Postman 中測試正常,但是我不知道如何通過瀏覽器將文件發送給數據庫。我一直收到 500 錯誤,并且我將數據打印到控制臺,而圖片字段為空,所以我確信這就是問題所在,但我就是搞不清楚怎么辦。

這是我前端頁面的 form 表單:

<template> <div class='container'> <div id='nav'> <adminnav/> </div> <div id='create'> <h1>Create new post</h1> </div> <div id='post'> <body> <form> <label for='title'>Title: </label> <textarea v-model=formdata.title rows='5' cols='60' name='title' placeholder='Enter text'> </textarea> <br/> <label for='body'>Body: </label> <textarea v-model=formdata.body rows='5' cols='60' name='body' placeholder='Enter text'> </textarea> <br/> <label for='description'>Description: </label> <textarea v-model=formdata.description rows='5' cols='60' name='description' placeholder='Enter text'> </textarea> <br/> <label for='snippet'>Snippet: </label> <textarea v-model=formdata.snippet rows='5' cols='60' name='snippet' placeholder='Enter text'> </textarea> <br/> <label for='file'>Upload photo: </label> <input type='file' accept='image/*' v-bind='formdata.photo' /> <br/> <input type='submit' value='submit' @click.prevent='createPost()'/> </form> </body> </div> </div></template><script>import adminnav from ’../components/adminnav.vue’;import PostService from ’../service/PostService’;export default { name: ’createStory’, components: { adminnav, }, data() { return { formdata: { title: ’’, body: ’’, description: ’’, snippet: ’’, photo: null, }, }; }, methods: { createPost() { console.log(this.formdata); /* eslint prefer-destructuring: 0 */ const formdata = this.formdata; PostService.createPost(formdata) .then(() => { console.log(’success’); }); }, },};</script>

這是 POST 請求。

router.post('/add-story', upload.single(’photo’), async(req, res) => { try{ let post = new Post(); post.title = req.body.title; post.description = req.body.description; post.photo = req.file.location; post.body = req.body.body; post.snippet = req.body.snippet; await post.save(); res.json({ status: true, message: 'Successfully saved.' }); } catch(err) { res.status(500).json({ success: false, message: err.message }); }});解決方法

讓我們監視文件 <input> 中的 change 事件。這樣可以確保每次用戶的上傳行為觸發 updatePhoto 方法并把文件數據儲存到 this.photo。

<input type='file' accept='image/*' @change='updatePhoto($event.target.name, $event.target.files)'>

編碼去收集所有的數據并發送請求

// vue組件的其他部分data () { return { title: ’’, body: ’’, description: ’’, snippet: ’’, photo: {} // 儲存文件數據 };},methods: { updatePhoto (files) { if (!files.length) return; // 存儲文件數據 this.photo = { name: files[0].name, data: files[0] }; }, createPost() { let formData = new FormData(); formData.append(’title’, this.title); formData.append(’body’, this.body); formData.append(’description’, this.description); formData.append(’snippet’, this.snippet); formData.append(’photo’, this.photo.data, this.photo.name); PostService.createPost(formdata) .then(() => { console.log(’success’); }); }}// vue組件的其他部分

很明顯,我跳過了很多事情,比如整個 vue 組件結構,我相信它與這個問題無關,還有一些確保在啟動請求之前文件數據可用的檢查等等。這是一個關于如何獲取文件數據的想法,所以希望這個答案能啟發您。

以上就是如何在 Vue 表單中處理圖片的詳細內容,更多關于Vue 表單中處理圖片的資料請關注好吧啦網其它相關文章!

標簽: Vue
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
免费看日韩精品| 爽爽淫人综合网网站| 亚洲一区不卡| 亚洲欧美日韩国产综合精品二区| 91久久亚洲| 天堂成人免费av电影一区| 亚洲狼人精品一区二区三区| 视频一区中文字幕精品| 日韩高清中文字幕一区| 日韩一区二区三区四区五区| 中文字幕av一区二区三区四区| 日韩精品午夜视频| 欧美日韩在线精品一区二区三区激情综合 | 日韩欧美在线精品| 日韩中文av| 里番精品3d一二三区| 久久久777| 一区二区自拍| 青青青国产精品| 91视频一区| 久久99伊人| 麻豆精品在线观看| 影视先锋久久| 日韩va欧美va亚洲va久久| 国产一区二区三区四区五区传媒| 999视频精品| 中文在线日韩| 精品欧美日韩精品| 国产高清一区| 国产精品a久久久久| 麻豆精品蜜桃| 免费人成精品欧美精品| 欧美日韩一区二区三区在线电影| 亚洲最新无码中文字幕久久| 日韩专区欧美专区| 福利一区和二区| 老牛影视一区二区三区| 久久久久免费| 日韩国产精品久久久| 日韩亚洲一区在线| 日韩精品1区2区3区| 久久久久国产精品一区三寸| 深夜福利一区| 欧美福利一区| 麻豆精品在线| 天使萌一区二区三区免费观看| 欧美激情网址| 欧美日韩国产一区二区三区不卡| 国产精品网在线观看| 波多野结衣一区| 精品亚洲成人| 亚洲久草在线| 日韩不卡免费高清视频| 久久狠狠久久| av不卡在线| 国产一区二区三区天码| 亚洲精品伦理| 黄色亚洲免费| 日韩国产激情| 久久激情五月婷婷| 免费在线观看视频一区| 精品日韩视频| 国产麻豆一区| 天堂va在线高清一区| 黄页网站一区| 久久久久一区| 精品国产亚洲日本| 7m精品国产导航在线| 男女精品网站| 久久精品国产亚洲夜色av网站| 久久av偷拍| 91成人福利| 青草久久视频| 久久国产精品久久w女人spa| 性感美女一区二区在线观看| 精品视频91| 国产极品模特精品一二| 久久xxxx| 中国女人久久久| 欧美亚洲在线日韩| 99精品综合| xxxxx性欧美特大| 久久精品99国产国产精| 日韩福利视频网| 日本精品国产| 日韩福利视频导航| 欧美一区网站| 国产三级一区| 欧美1区2区3| 精品一区二区三区中文字幕视频| 97成人在线| 欧美日韩1区2区3区| 亚洲美女久久| 日韩综合一区二区| 91欧美日韩在线| 日韩精品一区二区三区免费视频| 视频在线观看一区| 国产一区91| 久久午夜影视| 中文字幕一区二区三区在线视频| 亚洲最大av| 日韩不卡手机在线v区| 日韩av二区在线播放| 欧美亚洲tv| 精品久久久久中文字幕小说| 蜜桃一区二区三区在线观看| 六月婷婷一区| 免费观看久久久4p| 亚洲精选av| 日韩av影院| 麻豆极品一区二区三区| av中文资源在线资源免费观看| 97精品一区| 激情婷婷亚洲| 综合国产在线| 国产精品尤物| 精品国产第一福利网站| 亚洲性图久久| 亚洲男人在线| 免费日韩成人| 亚洲播播91| 中文国产一区| 日韩精品中文字幕一区二区| 国产精品白丝久久av网站| 日韩精品电影| 亚洲欧美久久久| 天堂精品久久久久| 久久女人天堂| 蜜桃国内精品久久久久软件9| 亚洲精品字幕| 成人午夜网址| 国产亚洲综合精品| 欧美三区不卡| 亚洲涩涩在线| 亚洲精品在线二区| 麻豆国产欧美一区二区三区| 久久黄色影院| 亚洲欧美久久精品| 国产一区二区三区四区二区| 国产一区清纯| 国产欧美高清| 91精品国产福利在线观看麻豆| 免费观看在线综合| 精品99在线| 亚洲字幕久久| 日韩综合在线| 综合日韩在线| av资源亚洲| 日韩国产欧美在线视频| 日韩欧美一区二区三区在线观看 | 97精品国产福利一区二区三区| 亚洲精品123区| 国产精品久久久久77777丨| 亚洲午夜一级| 欧美国产极品| 蜜臀a∨国产成人精品| 成人免费一区| 视频一区视频二区中文字幕| 免费一区二区三区在线视频| 91精品观看| 欧美激情精品| 午夜av一区| 成人国产精品| 欧美中文高清| 亚洲欧美日韩综合国产aⅴ| 国产欧美综合一区二区三区| 91精品啪在线观看国产18| 国产精品一区二区三区av麻| 激情91久久| 伊伊综合在线| 久久成人高清| 日本成人在线视频网站| 国产精品毛片| 国产中文一区| 日韩欧美1区| 久久免费福利| 国产一精品一av一免费爽爽| 国产精品老牛| 亚洲一本视频| 播放一区二区| 精品伊人久久久| 国产伦精品一区二区三区视频| 中文字幕免费精品| 好看的亚洲午夜视频在线| 日韩不卡免费高清视频| 精品国产欧美| 久久免费精品| 国产精品亚洲欧美日韩一区在线| 中文字幕免费精品| 快she精品国产999| 亚洲少妇自拍| 欧美日韩国产一区精品一区| 日韩在线高清| 日韩大片在线| 最近高清中文在线字幕在线观看1| 国产精品va| 国产精品欧美三级在线观看| 久久精品99久久久| 欧美日本一区| 日韩国产欧美三级|