项目运行的时候遇到Error: [React Intl] An id
must be provided to format a message.如图:
解决了半天发现自己的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。