首先项目安装依赖
import JsBarcode from “jsbarcode”;
img,canvas和svg标签都可以
插件地址:https://github.com/lindell/JsBarcode/wiki/Options
<img class="barcode" jsbarcode-format="CODE128" :jsbarcode-value="item.code" jsbarcode-textmargin="2" jsbarcode-fontoptions="bold" />
<canvas class="barcode" jsbarcode-format="CODE128"
jsbarcode-value="SH12110291348763025"
jsbarcode-textmargin="2"
jsbarcode-fontoptions="bold">></canvas>
下面讲打印功能(打包之后可能会注释丢失,导致找不到html,放到线上功能失效)
print() {
let bdhtml = window.document.body.innerHTML;
let sprnstr = "<!--startprint-->"; //开始打印标识字符串有17个字符
let eprnstr = "<!--endprint-->"; //结束打印标识字符串
let prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17); //从开始打印标识之后的内容
prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr)); //截取开始标识和结束标识之间的内容
const newWindow = window.open("", "");
newWindow.document.write(prnhtml);
newWindow.window.print();
newWindow.window.close(); // 打印完成后关闭后新窗口
return false;
}
另一种实现打印的功能
<div ref="print">
要打印的内容
</div>
print() {
let obj = this.$refs.print;
var newWindow = window.open();
var docStr = obj.innerHTML;
newWindow.document.write(docStr);
newWindow.document.close();
setTimeout(function () {
newWindow.print();
newWindow.close();
}, 10);
}