vue如何封裝選擇文件組件和選擇文件api
更新時間:2024年08月30日 17:21:25 作者:Mr阿斌
這篇文章主要介紹了vue如何封裝選擇文件組件和選擇文件api問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
vue封裝選擇文件組件和選擇文件api
方式一:選擇文件組件
<template>
<div @click="clickHandle">
<slot></slot>
<input type="file" hidden
ref="inputRef"
@change="changeFile"
:accept="accept"
:multiple="multiple"
/>
</div>
</template><script>
export default {
name:'ChooseFile',
props:{
accept:{
type:String
},
multiple:{
type:Boolean,
default:false
}
},
methods: {
clickHandle() {
this.$refs.inputRef.click()
},
changeFile(e){
this.$emit('chooseFile',e.target.files)
}
},
}
</script>
<style scoped>
</style>方式二:選擇文件api
const ChooseFile = (options) => {
if(typeof options ==='function'){
options={success:options}
}
if (typeof options === 'object') {
let input = document.createElement("input")
document.body.appendChild(input)
input.type = 'file'
input.hidden='hidden'
if (options.accept) {
input.accept = options.accept
}
if (options.multiple != null) {
input.multiple = options.multiple
}
input.click()
input.onchange = (e) => {
options.success(e.target.files)
document.body.removeChild(input)
}
}
}
export default ChooseFile掛載在vue原型上
使用
this.$chooseFile((files)=>console.log(files))
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue全局自適應大小:使用postcss-pxtorem方式
本文介紹了如何在Vue項目中使用postcss-pxtorem插件實現(xiàn)響應式設計,postcss-pxtorem可以自動將CSS文件中的px單位轉(zhuǎn)換為rem單位,從而實現(xiàn)更好的自適應布局,通過配置postcss-pxtorem插件,可以在構(gòu)建時自動完成轉(zhuǎn)換,無需手動修改代碼2025-01-01
使用Webpack提升Vue.js應用程序的4種方法(翻譯)
這篇文章主要介紹了使用Webpack提升Vue.js應用程序的4種方法(翻譯),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-10-10

