vue3輸入單號和張數(shù)如何自動生成連號的單號
需求: 輸入連號事件,需要在表格中輸入物流單號,物流號碼,生成的數(shù)量,名稱,點(diǎn)擊確定自動生成固定數(shù)量的連號物流單號
1.頁面布局
<div><el-button type="primary" size="default" @click="handleDialog">輸入連號</el-button></div> <br/><br/> <el-table :data="tableData" style="width: 80vw; margin-bottom: 20px" border > <el-table-column prop="code" label="快遞代碼" width="200"></el-table-column> <el-table-column prop="no" label="快遞單號"></el-table-column> <el-table-column prop="name" label="名稱"></el-table-column> <!-- <el-table-column prop="optes" label="操作"></el-table-column> --> </el-table>
彈出層代碼:
<el-dialog v-model="showDialog"> <el-table :data="tableDataDialog" style="width: 80vw; margin-bottom: 20px" border > <el-table-column prop="code" label="快遞代碼" width="200"> <template #default="{row}"> <el-input v-model="row.code" maxlength="10"> </el-input> </template> </el-table-column> <el-table-column prop="no" label="快遞單號"> <template #default="{row}"> <el-input v-model="row.no" maxlength="8"> </el-input> </template> </el-table-column> <el-table-column prop="name" label="名稱"> <template #default="{row}"> <el-input v-model="row.name"> </el-input> </template> </el-table-column> <el-table-column prop="num" label="張數(shù)"> <template #default="{row}"> <el-input v-model="row.num" minlength="1"> </el-input> </template> </el-table-column> </el-table> <el-button type="info" size="default" @click="save">確定</el-button> </el-dialog>
定義變量:
const tableData = reactive([])//生成之后的table表格 const tableDataDialog = ref([])//彈出層的表格 const showDialog = ref(false)//控制彈出層顯隱
點(diǎn)擊輸入連號自動先插入一條空數(shù)據(jù),用于輸入相應(yīng)地內(nèi)容
const handleDialog = ()=>{ showDialog.value = true let obj = { code: '', no: '', name: '', num: '' } tableDataDialog.value.push(obj) }
點(diǎn)擊保存時(shí),將彈出層輸入的單號,號碼,和數(shù)量進(jìn)行數(shù)據(jù)組裝,然后放入到tableData中,關(guān)閉彈出層
const save = ()=>{ let length = tableDataDialog.value.length let size = new Set(tableDataDialog.value.map(item=>item.code)).size if(size !== length){ ElMessage('物流號碼不能重復(fù)') return } let obj = {} let len = tableDataDialog.value[0].code.toString().length tableData.value = [] tableDataDialog.value.forEach((item)=>{ for(var i=0;i<item.num;i++){ obj = { code: item.code, no: item.no, name: item.name } item.no++ item.no = item.no.toString() for(var j=0;j<len;j++){ let noLen = item.no.toString().length if(noLen < len){ item.no = '0' + item.no//如果輸入的為帶00xx前綴的號碼,自動生成要做補(bǔ)0操作,不然會把0自動去掉 noLen++ } } tableData.push(obj) showDialog.value = false } }) }
到此這篇關(guān)于vue3輸入單號和張數(shù),自動生成連號的單號的文章就介紹到這了,更多相關(guān)vue自動生成連號的單號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue3關(guān)鍵字高亮指令的實(shí)現(xiàn)詳解
這篇文章主要為大家詳細(xì)介紹了vue3實(shí)現(xiàn)關(guān)鍵字高亮指令的相關(guān)資料,w文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考一下2023-11-11解決vue組件沒顯示,沒起作用,沒報(bào)錯(cuò),但該顯示的組件沒顯示問題
這篇文章主要介紹了解決vue組件沒顯示,沒起作用,沒報(bào)錯(cuò),但該顯示的組件沒顯示問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09Vue在echarts?tooltip中添加點(diǎn)擊事件案例詳解
本文主要介紹了Vue項(xiàng)目中在echarts?tooltip添加點(diǎn)擊事件的案例詳解,代碼具有一定的價(jià)值,感興趣的小伙伴可以來學(xué)習(xí)一下2021-11-11Element UI 上傳組件實(shí)現(xiàn)文件上傳并附帶額外參數(shù)功能
在使用 ElementUI 的上傳組件 el-upload 實(shí)現(xiàn)文件上傳功能時(shí),如果單文件上傳是比較簡單的,但是在實(shí)際需求中,往往會在上傳文件時(shí)伴隨著一些其他參數(shù),怎么操作呢,下面通過示例代碼講解感興趣的朋友一起看看吧2023-08-08vue導(dǎo)出html、word和pdf的實(shí)現(xiàn)代碼
這篇文章主要介紹了vue導(dǎo)出html、word和pdf的實(shí)現(xiàn)方法,文中完成了三種文件的導(dǎo)出但是還有很多種方法,小編就不給大家一一列舉了,需要的朋友可以參考下2018-07-07前端請求超時(shí)截?cái)郺xios?timeout設(shè)置未生效情況解決記錄
在項(xiàng)目中遇到了后臺接口返回?cái)?shù)據(jù)慢的時(shí)候往往需要設(shè)置請求失效時(shí)間,在項(xiàng)目中遇到設(shè)置timeout失效問題由此記錄下來,這篇文章主要給大家介紹了前端請求超時(shí)截?cái)郺xios?timeout設(shè)置未生效情況解決的相關(guān)資料,需要的朋友可以參考下2024-07-07