主要是使用paho-mqtt
初始化mqtt。
let mqttClient = null
let mqttCallback = null
mqttCallback = new Map();
//初始化mqtt
var that = this;
let client = new Paho.Client('这里是ip', Number(端口号), '2222222随机数uuid');
client.onConnectionLost = function (responseObject) {
console.log(responseObject);
if (responseObject.errorCode !== 0) {
console.log("onConnectionLost:" + responseObject.errorMessage);
}
};
client.onMessageArrived = function (message) {
console.log(message);
that.setState({ mqttContent: message })
};
client.connect({
onSuccess: function () {
that.setState({ mqttConnectFlag: true })
console.log('mqtt on connect');
},
useSSL: false
});
mqttClient = client;
console.log(mqttClient);
订阅mqttrender中延时器调用
wait(){
if(mqttClient){
console.log('进入订阅了');
mqttClient.subscribe('testtopic')
}
}
思路总结:
初始化mqtt,使用页面变量存储client实例。
延时器订阅mqtt。
client.onMessageArrived 中接收发来的消息