1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
| <template>
| <web-view class="myView" ref="webview" src="http://192.168.1.145:86/UserLogin.aspx" @message="onMessage"></web-view>
| <!-- "http://192.168.1.145:86/UserLogin.aspx" -->
| </template>
| <script>
| import {queue} from '@/utils/printSupport'
| export default {
| data() {
| return {
| messageTest:"1",
| ip: "111",
| port: "9100",
| info: ['']
| }
| },
| onLoad() {
| this.ddd=";s";
| // #ifdef H5
| // uniapp webview h5 通信 window.postMessage 方式
| // https://blog.csdn.net/qq_42313445/article/details/127068570
| window.addEventListener("message", (event) => {
| // 全量打印
| // console.log(event)
| // 只看关键消息
| // console.log(event.data)
| // hybrid页面通过uni.webView.postMessage传递的data结构
| // let event_data = event.data.data.arg;
| // this.ddd=event_data
| // console.log(event_data)
| }, false)
| // #endif
| },
| methods: {
|
| onMessage(e) {
| console.log('收到消息:', e.detail.data);
| this.messageTest=e.detail.data;
| var _obj=JSON.parse(this.messageTest);
| ///
| console.log(_obj.Ip);
| console.log(_obj.Port);
| console.log(_obj.Detail);
|
| this.ip = _obj.Ip;
| this.port = _obj.Port;
| this.info = _obj.Detail;
| /////////////////////////访问服务器
| this.printHandle();
| },
| callH5Method(){
| uni.postMessage({
| data: {
| action: 'someAction',
| content: 'Hello from uniapp'
| }
| }, (response) => {
| console.log('收到H5页面的响应:', response);
| });
| },
| async printHandle() {
| const arr = this.info;
| uni.showLoading({
| title: '发送中...',
| mask: true
| });
| try {
| console
| // 发送数组处理
| await queue(arr,this.ip,this.port);
| } catch (error) {
| // console.error('Error during queue processing:', error);
| uni.showToast({
| title: error,
| icon: "error",
| duration: 2000
| })
| } finally {
| uni.hideLoading();
| this.printTxt = "已发送"
| uni.showToast({
| title: "发送完成",
| icon: "success",
| duration: 2000
| })
| }
| },
| }
| }
| </script>
| <style>
| </style>
|
|