vue3輸入單號和張數(shù)如何自動生成連號的單號
需求: 輸入連號事件,需要在表格中輸入物流單號,物流號碼,生成的數(shù)量,名稱,點擊確定自動生成固定數(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)//控制彈出層顯隱
點擊輸入連號自動先插入一條空數(shù)據(jù),用于輸入相應(yīng)地內(nèi)容
const handleDialog = ()=>{
showDialog.value = true
let obj = {
code: '',
no: '',
name: '',
num: ''
}
tableDataDialog.value.push(obj)
}點擊保存時,將彈出層輸入的單號,號碼,和數(shù)量進行數(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前綴的號碼,自動生成要做補0操作,不然會把0自動去掉
noLen++
}
}
tableData.push(obj)
showDialog.value = false
}
})
}到此這篇關(guān)于vue3輸入單號和張數(shù),自動生成連號的單號的文章就介紹到這了,更多相關(guān)vue自動生成連號的單號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決vue組件沒顯示,沒起作用,沒報錯,但該顯示的組件沒顯示問題
這篇文章主要介紹了解決vue組件沒顯示,沒起作用,沒報錯,但該顯示的組件沒顯示問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
Vue在echarts?tooltip中添加點擊事件案例詳解
本文主要介紹了Vue項目中在echarts?tooltip添加點擊事件的案例詳解,代碼具有一定的價值,感興趣的小伙伴可以來學(xué)習(xí)一下2021-11-11
Element UI 上傳組件實現(xiàn)文件上傳并附帶額外參數(shù)功能
在使用 ElementUI 的上傳組件 el-upload 實現(xiàn)文件上傳功能時,如果單文件上傳是比較簡單的,但是在實際需求中,往往會在上傳文件時伴隨著一些其他參數(shù),怎么操作呢,下面通過示例代碼講解感興趣的朋友一起看看吧2023-08-08
vue導(dǎo)出html、word和pdf的實現(xiàn)代碼
這篇文章主要介紹了vue導(dǎo)出html、word和pdf的實現(xiàn)方法,文中完成了三種文件的導(dǎo)出但是還有很多種方法,小編就不給大家一一列舉了,需要的朋友可以參考下2018-07-07
前端請求超時截斷axios?timeout設(shè)置未生效情況解決記錄
在項目中遇到了后臺接口返回數(shù)據(jù)慢的時候往往需要設(shè)置請求失效時間,在項目中遇到設(shè)置timeout失效問題由此記錄下來,這篇文章主要給大家介紹了前端請求超時截斷axios?timeout設(shè)置未生效情況解決的相關(guān)資料,需要的朋友可以參考下2024-07-07

