当前位置: 首页 > news >正文

Vue3使用hiprint——批次打印条码

例图:打印编号

一、安装Vue-Plugin-HiPrint

要开始使用 Vue-Plugin-HiPrint,首先需要安装它。可以使用 npm

npm install vue-plugin-hiprint --save

二、在main.js中引入 Vue-Plugin-HiPrint

在您的 main.js 或任何其他入口文件中,您可以按以下方式引入它:

1、main.js中引入

//打印hiprint
import {VuePluginHiPrint,disAutoConnect} from 'vue-plugin-hiprint';Vue.use(VuePluginHiPrint).mount('#app').$nextTick(() => {disAutoConnect();})

这会将 Vue-Plugin-HiPrint 注册为 Vue 插件,使其可用于您的整个应用程序。

2、组件中引入

import {hiPrintPlugin } from 'vue-plugin-hiprint'

三、创建打印模板

网址:hiprint.io

建议:将json保存到数据库中,或者保存在字典数据中

四、引入样式

创建了打印模板后,可以在Vue 组件中使用 Vue-Plugin-HiPrint 来触发打印操作。首先,先要在项目的index.html文件中引入print-lock.css样式文件,这个文件在node_modules/vue-plugin-hiprint/dist/目录。

注意:需复制一份print-lock.css样式文件放到与index.html同级目录下,否则打印样式有问题(我复制在public文件夹中)。在index.html文件中添加

<!--    * 以处理打印所需css, 当然你也可以自行处理-->
<!--    * 比如: index.html目录下放一个print-lock.css, 然后在index.html添加:-->
<link rel="stylesheet" type="text/css" media="print" href="/public/print-lock.css">

不加会出现样式问题,例如批次打印都堆叠在第一页

五、组件中使用打印

使用按钮触发打印事件

 <el-col :span="1.5"><el-button type="warning"  v-hasPermi="['hm-cell-info:edit']" plain icon="edit" @click="handleBatchPrint">打印库位条形码</el-button></el-col>

//打印按钮
function handleBatchPrint(){hiPrintPlugin.disAutoConnect();  //取消自动打印直接连接客户端hiprint.init();//初始化let hiprintTemplate= new hiprint.PrintTemplate({template: JSON.parse(printTemplate.value),});//printTemplate是打印模板jsonlet printData= selectData.value;//选中数据数组console.log("打印数据",printData)hiprintTemplate.print(printData)//触发打印}

六、问题处理

错误一:报错webSocket

解决方式:在main.js中添加disAutoConnect方法

错误二:条码重叠

解决方式:index.html中导入print-lock.css样式

参考网址:

【vue-plugin-hiprint】常见问题汇总① (qq.com)

相关文章:

  • 【初阶数据结构】详解二叉树 - 树和二叉树(三)(递归的魅力时刻)
  • LeetCode(Python)-贪心算法
  • css五种定位总结
  • 什么是共享旅游卡?解析共享旅游创业项目认知与代理攻略
  • 【RabbitMQ】RabbitMQ 的概念以及使用RabbitMQ编写生产者消费者代码
  • 【python qdrant 向量数据库 完整示例代码】
  • HTML开发指南
  • MT6765/MT6762(R/D/M)/MT6761(MT8766)安卓核心板参数比较_MTK联发科4G智能模块
  • HTML中的表单(超详细)
  • ‌Excel VBA进行间比法设计
  • 【项目案例】物联网比较好的10+练手项目推荐,附项目文档/源码/视频
  • 【HTTP】方法(method)以及 GET 和 POST 的区别
  • 第十章 【后端】商品分类管理微服务(10.10)——Nacos 注册中心
  • SPSS26统计分析笔记——4 方差分析
  • 并网逆变器是如何产生有功和无功电流的?
  • (三)从jvm层面了解线程的启动和停止
  • __proto__ 和 prototype的关系
  • 【React系列】如何构建React应用程序
  • 【刷算法】从上往下打印二叉树
  • 77. Combinations
  • centos安装java运行环境jdk+tomcat
  • IDEA 插件开发入门教程
  • JavaScript 事件——“事件类型”中“HTML5事件”的注意要点
  • MD5加密原理解析及OC版原理实现
  • Rancher-k8s加速安装文档
  • spring boot下thymeleaf全局静态变量配置
  • Vue2.x学习三:事件处理生命周期钩子
  • Vue--数据传输
  • 从零搭建Koa2 Server
  • 构建工具 - 收藏集 - 掘金
  • 关于 Cirru Editor 存储格式
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 那些被忽略的 JavaScript 数组方法细节
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 微服务框架lagom
  • 用jquery写贪吃蛇
  • 在Docker Swarm上部署Apache Storm:第1部分
  • 阿里云重庆大学大数据训练营落地分享
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • ​【经验分享】微机原理、指令判断、判断指令是否正确判断指令是否正确​
  • ​【已解决】npm install​卡主不动的情况
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • #微信小程序:微信小程序常见的配置传值
  • (1)Nginx简介和安装教程
  • (2)STL算法之元素计数
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (NSDate) 时间 (time )比较
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (十)c52学习之旅-定时器实验
  • (译)计算距离、方位和更多经纬度之间的点