vue项目实现图片上传功能

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <style> .uploadimg{ width:100px; height:100px; border-radius: 50%; } </style> <body> <div> <input type="file" @change="upTx"> <img :src="imgsrc"/> </div> </div> </body> <!--<script src="https://www.jb51.net/util.js">--> <!--</script>--> <script src="https://www.jb51.net/vue.js"> </script> <script src="https://www.jb51.net/jquery-1.11.1.js"></script> <script src="https://www.jb51.net/axios.js"></script> <script> var vm = new Vue({ el:"#app", data:{ imgsrc:"000", return:{ } }, mounted(){ }, methods:{ upTx() { var _this = this; var r = new FileReader(); var file = document.getElementById("txUrl").files[0]; var beat64Url; if (!/image\/\w+/.test(file.type)) { // this.$message.error("上传的文件必须为图片!!"); alert('上传的文件必须为图片'); return false; } r.readAsDataURL(file); r.onload = function(e) { beat64Url = this.result; }; var formData = new FormData(); formData.append("upload_img", $("#txUrl")[0].files[0]); axios({ url: "https://mk_api.dthudong.cn/api/file/upImg", method: "POST", headers: { token: '55a31e89d7dd8b80282cba7d844d1c28' }, data: formData }) .then(res => { console.log(res.data); if (res.data.code == 0) { vm.imgsrc =res.data.data.src; console.log(vm.imgsrc) } else { _this.$message({ message: res.data.msg, type: "alert" }); } }) .catch(function(error) { }); }, } }) </script> </html>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/8ca8df63124c3742b8a0de04e83ec0e4.html