奇异问题之解决思路(一) npm run dev或npm run buil报错,单独运行scripts又正常?

找问题&解决步骤

    • 问题描述
    • 分析产生原因
    • 小小总结下吧
    • 愿佛祖保佑大家无难解决的问题&Bug

问题描述

我想使用rollup打包自己写的一个工具类库,于是手动搭建了一个rollup工程(工程源码详见评论地址分享)
全局安装rollup:npm install rollup -g
进入工程安装各项依赖,编辑配置文件,执行rollup -c -w可正常监听 src 目录,实时构建
将上述命令写入package.json文件中的scripts字段里,执行:npm run dev报错,字面意思是读取package.json失败
同样的rollup -c打包正常,npm run build读取package.json失败
问题就这样莫名其妙的产生了

分析产生原因

  1. 仔细检查package.json是否有写的不正确的地方 => 并没有
  2. 检查其他模块运行是否正常:执行npm run lint,可正常使用eslint检测代码规范 => 结论:package.json肯定没问题
  3. 跟打包相关的就只有另外一个项目配置文件了,但是rollup -c命令又是正常,说明我们的配置文件正确 => 此时的我已经处于崩溃边缘,休息一个周末再说!
  4. 最后可能存在的问题就是依赖包版本不正确,全局的rollup命令正常的,那么查看一下全局版本:rollup -v => 0.66.6,在检查下本地的版本(package.json中的devDependencies有记录)为0.38.0
  5. => 难道是因为这点儿版本号的差距导致的吗?不能忍,将package.json中的rollup版本号改为0.66.6,并去掉前面的^符号,删除node_modules目录,重新安装依赖
  6. 执行npm run build => 正确的打包了我们的项目!!!,至此问题原因和解决方法都有了

小小总结下吧

  1. 遇到此类问题要仔细的分析产生的原因,知道原因了自然就有解决办法了
  2. 分析原因的方法:由小到大,先自己在他人,先局部在整个项目分析。
  3. 简单理解:先看看执行的命令语句是否有问题,第二步再看调用该语句的文件是否有问题(这里的package.json),最后再看整个项目的配置是否不正确(包括项目配置文件、项目依赖、包文件目录路径等)

愿佛祖保佑大家无难解决的问题&Bug

                     _ooOoo_",
                    o8888888o",
                    88\" . \"88",
                    (| -_- |)",
                    O\\  =  /O",
                 ____/`---'\\____",
               .'  \\\\|     |//  `.",
              /  \\\\|||  :  |||//  \\",
             /  _||||| -:- |||||-  \\",
             |   | \\\\\\  -  /// |   |",
             | \\_|  ''\\---/''  |   |",
             \\  .-\\__  `-`  ___/-. /",
           ___`. .'  /--.--\\  `. . __",
        .\"\" '<  `.___\\_<|>_/___.'  >'\"\".",
       | | :  `- \\`.;`\\ _ /`;.`/ - ` : | |",
       \\  \\ `-.   \\_ __\\ /__ _/   .-` /  /",
  ======`-.____`-.___\\_____/___.-`____.-'======",
                     `=---='",
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
           佛祖保佑       永无BUG"

你可能感兴趣的:(前端小知识,npm,npm,报错,rollup打包,js,JavaScript)