使用生成條形碼并打印和vue-print-nb以及報(bào)錯(cuò)問題的解決
生成條形碼并打印和vue-print-nb以及報(bào)錯(cuò)
借鑒網(wǎng)上大多數(shù)vue-print-nb安裝打印,發(fā)現(xiàn)在自己的項(xiàng)目(ts語法下)中會(huì)發(fā)現(xiàn)模塊引入錯(cuò)誤
所以換成
npm install vue3-print-nb //重新安裝
vue-print-nb在自己的項(xiàng)目中無法使用,故此更換
引入后需要在根目錄下的env.d.ts中引入
declare module 'vue3-print-nb' {
const install: (app: App) => void
const print: (options?: PrintOptions) => void
export default { install, print }
}引入后需要在tsconfig.json文件里的include中添加env.d.ts的路徑
也可以在ts項(xiàng)目下的默認(rèn)下的types下的文件中引入也可以,或者全局搜索 declare module,在添加,這在樣mian.ts下引入 import print from 'vue3-print-nb' 不會(huì)報(bào)類型報(bào)錯(cuò),在進(jìn)行全局掛載
使用條形碼多批量打印
<div class="preview-area" id="printTest">
<div v-for="(item, index) in data" :key="index">
<svg :ref="el => setBarcodeRef(el, index)"></svg>
<p style="page-break-after: always"></p>
</div>
</div>
<el-button v-print="printObj" ref="printBtn" style="display: none;"></el-button>
</div>
const data = ref([])
const barcodeRefs = ref([])
const printBtn = ref(null)
const printObj = reactive({
id: 'printTest',
beforeOpenCallback(vue) {
vue.printLoading = true
},
openCallback(vue) {
vue.printLoading = false
},
closeCallback(vue) {
console.log('關(guān)閉了打印工具')
}
})
//獲取每一個(gè)對(duì)應(yīng)的svg
const setBarcodeRef = (el, index) => {
barcodeRefs.value[index] = el
}
//list為數(shù)據(jù)源 調(diào)用showPrint進(jìn)行數(shù)據(jù)調(diào)用
const showPrint = async (list) => {
data.value = list
await nextTick()
await generateBarcode(list)
// 生成完成后自動(dòng)觸發(fā)打印
await nextTick()
printBtn.value.$el.click()
}
const generateBarcode = async (list) => {
try {
list.forEach((item, index) => {
if(barcodeRefs.value[index]) {
JsBarcode(barcodeRefs.value[index], item.LocationCode, {
format: "CODE128",
lineColor: "#000",
width: 2,
height: 60,
displayValue: true,
fontSize: 16,
margin: 10
});
}
})
} catch (error) {
console.error('生成條形碼失敗:', error);
}
};總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue3+TypeScript項(xiàng)目中安裝PDF.js詳細(xì)的步驟
這篇文章主要介紹了Vue3+TypeScript項(xiàng)目中安裝PDF.js詳細(xì)的步驟,通過示例代碼詳細(xì)介紹了包括安裝步驟、基礎(chǔ)使用示例、創(chuàng)建可復(fù)用PDF查看器組件、注意事項(xiàng)等,需要的朋友可以參考下2026-01-01
vue實(shí)現(xiàn)動(dòng)態(tài)控制el-table表格列的展示與隱藏
這篇文章主要介紹了vue實(shí)現(xiàn)動(dòng)態(tài)控制el-table表格列的展示與隱藏,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
Vue的Eslint配置文件eslintrc.js說明與規(guī)則介紹
最近在跟著視頻敲項(xiàng)目時(shí),代碼提示出現(xiàn)很多奇奇怪怪的錯(cuò)誤提示,百度了一下是eslintrc.js文件沒有配置相關(guān)命令,ESlint的語法檢測(cè)真的令人抓狂,現(xiàn)在總結(jié)一下這些命令的解釋2020-02-02
關(guān)于el-scrollbar滾動(dòng)條初始化不顯示的問題及解決
這篇文章主要介紹了關(guān)于el-scrollbar滾動(dòng)條初始化不顯示的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08

