Connect to mqtt through websocket, implementation for Vuejs 2
Example Vue-Mqtt-Example
npm install vue-mqtt --save
import VueMqtt from 'vue-mqtt';
Vue.use(VueMqtt, 'ws://iot.eclipse.org/ws', options);
options: https://github.com/mqttjs/MQTT.js#client
this.$mqtt.subscribe('param/param/param/test', options)
options: https://github.com/mqttjs/MQTT.js#subscribe
The last parameter for reading is used
var vm = new Vue({
mqtt: {
'param/+/+/test': function(val) {
console.log('param/+/+/test')
},
'param/#': function(val) {
console.log('param/#')
},
'param/param/param/test': function(val) {
console.log('param/param/param/test')
},
'template/+' (data, topic) {
if (topic.split('/').pop() === '12345') {
console.log('topic:', 'template/12345')
}
},
'template/+/param/param' (data, topic) {
if (topic.split('/')[1] === '12345') {
console.log('topic:', 'template/12345/param/param')
}
}
},
methods: {
clickSub: function(val) {
this.$mqtt.subscribe('param/param/param/test')
},
clickPub: function(val) {
this.$mqtt.publish('param/param/param/test', 'message')
}
}
})
Author: nik-zp
Demo: https://github.com/nik-zp/Vue-Mqtt-Example
Source Code: https://github.com/nik-zp/Vue-Mqtt
#vuejs #vue #javascript