项目引入 mqtt 报错 Uncaught ReferenceError: Buffer is not defined

news/2024/11/24 4:28:15/

项目引入 mqtt 报错 Uncaught ReferenceError: Buffer is not defined

最近在做一个 vite4.x + react18 的项目,需要引入 mqtt.js , 基操直接引入

import mqtt from 'mqtt'

结果浏览器直接报错 Uncaught ReferenceError: Buffer is not defined.
首先想到的是不是 mqtt.js 库不能用在浏览器上,可能是需要 node 环境?
头大,但是以前用 vue 2 的时候没有出现过这种问题.
然后各种百度, 各种刁难 gpt ,出来的解决方案都试了,没有啥用.
然后上 vite 的 github 查看 issue, 里面是各种加 vite 配置和 polyfill 插件,大概试了一遍,但是还是发现对我目前的项目没有生效.
后面破罐子破摔, 想了想, 直接进 node_modules 查看一下啥问题,发现有一个 dist 目录, 而且里面有 mqtt.js 文件和 mqtt.min.js ,就想着直接引用.于是修改了引入方式

import * as mqtt from 'mqtt/dist/mqtt.min';

结果就可以了…
今天真是投机取巧的一天啊…


http://www.ppmy.cn/news/608422.html

相关文章

大数据ELK(二十):FileBeat是如何工作的

文章目录 FileBeat是如何工作的 一、input和harvester 1、inputs(输入)

重型车辆盲区行为检查Behaviours – Heavy Vehicle Blind Spots

重型车辆盲区行为检查Behaviours – Heavy Vehicle Blind Spots VISIBILITY AROUND HEAVY VEHICLES A blind spot is an area of the road outside the driver’s field of vision that cannot be seen in the rearview mirrors or through the windows. The taller and longer…

大数据ELK(二十一):Logstash简介和安装

文章目录 Logstash简介和安装 一、简介 1、经典架构 2、对比Flume

大数据ELK(二十二):采集Apache Web服务器日志

文章目录 采集Apache Web服务器日志 一、需求 二、准备日志数据

Mobileye高级驾驶辅助系统(ADAS)

Mobileye高级驾驶辅助系统(ADAS) Mobileye is the global leader in the development of vision technology for Advanced Driver Assistance Systems (ADAS) and autonomous driving. We have over 1,700 employees continuing our two-decade traditio…

大数据ELK(二十三):Kibana简介

文章目录 Kibana简介 Kibana简介 通过上面的这张图就可以看到,Kibana可以用来展示丰富的图表。 Kibana是一个开源的数据分析和可视化平台,使用Kibana可以用来搜索Elasticsearch中的数据,构建漂亮的可视化图形、以及制作一些好看的仪表盘Kibana是用来管理Elastic stack组件的…

C++教程——内存四区

程序的内存模型——内存四区 代码区和全局区 栈区 堆区 new操作符

EyeQ进展The Evolution of EyeQ

EyeQ进展The Evolution of EyeQ Mobileye’s proven leadership in ADAS technologies is based in our EyeQ family system-on-chip (SoC) devices. More than 27 car manufacturers have chosen the EyeQ for their assisted-driving technologies based on its ability to s…