uniapp 使用mqtt 报错 socketTask onOpen is not a function

这篇具有很好参考价值的文章主要介绍了uniapp 使用mqtt 报错 socketTask onOpen is not a function。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 报错的解决方法

在man.js文件添加这个

// #ifndef MP
// 处理 wx.connectSocket promisify 兼容问题,强制返回 SocketTask
uni.connectSocket = (function(connectSocket) {
	return function(options) {
		console.log(options)
		options.success = options.success || function() {}
		return connectSocket.call(this, options)
	}
})(uni.connectSocket)
// #endif

1. 安装mqtt,使用mqtt@3.0.0

yarn add mqtt@3.0.0

或 
npm install mqtt@3.0.0

为啥不用最新版本4.0,主要是最新版有问题,根据用不起。文章来源地址https://www.toymoban.com/news/detail-686436.html

2. 建立连接,监听消息

let options = {
		clientId: "web-" + Math.random().toString(36).replace('.', ''),
		protocolVersion: 5,
		keepalive: 30,
		connectTimeout: 5 * 1000,
}

let url = "wx://127.0.0.1:8088/mqtt";
let client = mqtt(url,options); //1.发起连接

client.on("connect", () => {    //2. 监听连接是否成功
	 console.log('连接成功');  
	 client.subscribe("user/11", (err) => { });   //3.订阅用户频道
});

到了这里,关于uniapp 使用mqtt 报错 socketTask onOpen is not a function的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp开发小程序引入组件报错Component is not found in path

    在使用uniapp开发小程序时,由于分包遇到了一个问题,引入其他分包的组件时报错Component is not found in path  小程序报错  后来发现,引用其他包的资源都会报错,之前只知道分包不能使用主包资源,不知道分包之间的资源也不能共用。将需要的组件复制一份过来就行了。 经验

    2024年02月12日
    浏览(43)
  • uniapp开发微信小程序报错:[system] API `getUserProfile` is not yet implemented

    在用uniapp开发微信小程序时,想获取用户的微信头像和微信用户名 首先想到的是  可是程序报错:[system] API `login` is not yet implemented 我在想是不是微信已废弃原有的微信登录api, 小程序登录、用户信息相关接口调整说明 | 微信开放社区 为优化用户的使用体验,平台将进行

    2023年04月12日
    浏览(51)
  • uniapp项目启动报错 binding.node is not a valid Win32 application 终极解决方案

    出现问题的前提条件: 阅读 uniapp 官网的教程,快速上手阶段使用 hbuildx 进行项目搭建时,无法成功启动 uniapp 项目。 这个问题在网上有很多解答,但是大部分都说的很不清楚。 在网上随便找了点代码复现错误: 仔细观察可以发现 其实两次出现的这个路径都是同一个,我们

    2024年02月09日
    浏览(78)
  • idea使用git报错 Git is not installed

    本文为个人在使用软件时遇到的些许错误,无任何意向,仅为记录,也供各位同学参考 File–Settings–Version Contorl–Git 在初次关联git到idea时需要对git路径进行配置 输入路径后点击地址框右侧 Test 进行适配, 主页面上侧GitClone 在URL栏中输入git仓库地址,实现关联

    2024年02月13日
    浏览(52)
  • vue3 使用require报错:require is not defined

    1.报错原因 vue3使用vite打包 里面没有require方法, webpack 里面有这个方法 2.解决方案 使用import 代替 *注: 资源可使用import.meta.globEager(“…/*.png”) ; 动态引入,需要给 css 路径加括号 vite官网静态资源处理 new URL(url, import.meta.url) import.meta.url : ESM 的原生功能,会暴露当前模块的

    2024年02月07日
    浏览(48)
  • spark中使用flatmap报错:TypeError: ‘int‘ object is not subscriptable

    菜鸟笔者在运行下面代码时发生了报错: 报错描述如下:  显然这是传入的数据类型发生了错误: 因为我们试图对整数对象执行下标操作,而这是不允许的。 原来flatMap底层通过取下标来展开元素 如果rdd集合里面有非可迭代对象(如int元素)则会报错TypeError: \\\'int\\\' object is n

    2024年02月04日
    浏览(43)
  • Calico 报错 calico/node is not ready: BIRD is not ready: BGP not established with(导致 K8S 集群网络无法使用)

    错误 今天不知道怎么回事,一台机器的calico-node报错,也就是无法初始化正常 解决办法         移除这台主机多余的docker网卡和calico         然后从重新删除这个错误pod的,就会恢复正常         造成问题的原因是,Calico使用了错误的网桥导致网络无法连通,所以我

    2024年02月07日
    浏览(43)
  • vue3使用process报错Uncaught ReferenceError: process is not defined

    之前使用 vue-cli创建项目 时,使用 process.env.变量名 获取环境变量(在根目录下配置环境配置文件之后)。 今天使用 vite+vue3 创建项目时,使用相同的方法却获取不到,还报以下错误,这是为什么呢? 后来查看了VITE官网才知道,使用vite+vue的时候环境变量的获取方式变成如下

    2024年02月11日
    浏览(45)
  • ReferenceError: require is not defined 【vue3 +vite +setup语法使用报错】

    原本我们在vue2时代,可以使用require 导入静态资源,如下所示 但在vue3中的vite没有require方法定义的使用,说白了就是不使用require方法进行资源的导入,而是使用新的方法。详情请看官网。 Vite官网 我这里提供两种方法: 方法1: 使用 import导入资源 方法2: 直接使用 new URL(

    2024年02月13日
    浏览(45)
  • Pycharm使用Anaconda虚拟环境找不到Python.exe:报错:Conda executable is not found

    很多同学在初始配置虚拟环境的时候都会用到Anaconda(Conda)系列,然而,使用Pycharm配置python环境的时候却找不到虚拟环境里的python.exe文件,报错:Conda executable is not found,具体见下图 将虚拟环境加入到环境变量里(不解?) 找到conda.exe(实践后发现anaconda不认这个exe文件) 直接

    2024年02月13日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包