react package.json踩坑:Error: [React Intl] An `id` must be provided to format a message.

项目运行的时候遇到Error: [React Intl] An id must be provided to format a message.如图:

image.png

解决了半天发现自己的package.json中的版本号和npm安装的后的把版本号不一致,就很疑惑为什么会不一样,原来package.json版本安装的前面默认带了一个向上的箭头(之前看过这个箭头的意思,只不过忘记了),这个箭头代表以后每次安装的时候都会以最新版本安装,所以我的错误的原因就是版本号冲突----版本太高了!!!

解决方法:

把所以关于node_modules报的版本号的前面的箭头去掉重新npm install,然后就好了~~~

补充知识点:

波浪符号(~):他会更新到当前minor version(也就是中间的那位数字)中最新的版本。放到我们的例子中就是:body-parser:~1.15.2,这个库会去匹配更新到1.15.x的最新版本,如果出了一个新的版本为1.16.0,则不会自动升级。波浪符号是曾经npm安装时候的默认符号,现在已经变为了插入符号。

插入符号(^):这个符号就显得非常的灵活了,他将会把当前库的版本更新到当前major version(也就是第一位数字)中最新的版本。放到我们的例子中就是:bluebird:^3.3.4,这个库会去匹配3.x.x中最新的版本,但是他不会自动更新到4.0.0。

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容