Vue2使用mqtt
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue
·
Vue2使用mqtt
使用npm下载库,使用过高版本的mqtt库,vue2无法正常启动。亲测2.18.8版本可以使用。
npm install mqtt@2.18.8
// yarn
yarn add mqtt@2.18.8
在需要的页面引入mqtt
import mqtt from "mqtt"
在methods方法中添加openMqtt方法
openMqtt() {
let clientId = "test_" + new Date().getTime();
let client = mqtt.connect('ws://XXXX', {
clientId: clientId,
username: 'admin',
password: '123456'
})
let produceTopic = "topic/main";
client.on('connect', () => {
console.log('mqtt 已经连接成功');
client.subscribe(produceTopic, (data) => {
console.log("mqtt " + produceTopic + " 订阅成功");
})
});
client.on('message', (topic, data) => {
console.log("mqtt 收到" + topic + "的消息");
console.log(data.toString());
if (topic === produceTopic) {
// 处理指定主题下的消息
console.log(JSON.parse(data.toString()))
}
})
client.on('reconnect', () => {
console.log("mqtt reconnect");
})
client.on('offline', () => {
console.log("mqtt offline");
})
client.on('error', (error) => {
console.log("mqtt error");
console.log(error);
})
client.on('close', () => {
console.log("mqtt close");
})
},
在mounted生命周期里添加该方法
this.openMqtt()
注:由于项目的产线环境为局域网使用的是http协议,所以mqtt的连接地址使用的是ws,ws在连接过程中的username和password都是非必填项。
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:2 个月前 )
9e887079
[skip ci] 1 年前
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 1 年前
新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐


所有评论(0)