日期: 2020-06-22 17:38:20
本文实例为大家分享了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 id="app"> <input type="file" @change="upTx" id="txUrl"> <img class="uploadimg" :src="imgsrc"/> </div> </div> </body> <!--<script src="util.js">--> <!--</script>--> <script src="../vue.js"> </script> <script src="../jquery-1.11.1.js"></script> <script src="../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>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持奥多码。