下载依赖
yarn add vue-print-nb
在全局main.js内注册依赖
import { createApp } from 'vue'
import App from './App.vue'
import print from 'vue3-print-nb'
const app = createApp(App)
app.use(print)
app.mount('#app')
在.vue 文件内先注册命令
import print from 'vue3-print-nb'
export default {
directives: {
print,
},
}
.vue 文件内使用
// v-print 命令调用浏览器打印界面
<el-button type="primary" size="small" v-print="printObj">登记</el-button>
// 打印内容
<div id="test" v-show="print_flag">
<img src="@/assets/print.jpg" alt="" />
</div>
// 绑定对象
setup() {
const data = reactive({
// 浏览器打印的对象
printObj: {
id: 'test',
// 这个方法会监听打印界面的操作
closeCallback() {
console.log('关闭了打印工具');
},
},
});
return {...toRefs(data),},
};
打印机的方法
previewBeforeOpenCallback () {
console.log('正在加载预览窗口')
},
previewOpenCallback () {
console.log('已经加载完预览窗口')
},
beforeOpenCallback (vue) {
console.log('打开之前')
},
openCallback (vue) {
console.log('执行了打印')
},
closeCallback (vue) {
console.log('关闭了打印工具')
}
打印的属性
id:绑定你打印区域的id
preview:是否预览,值:true/false
previewTitle:预览标题
popTitle:流行标题,我也没有用过这个,感兴趣试过的人评论一下
extraCss: 自己设计的打印样式