注:本文是本人在开发过程中遇到的问题及解决方法的总结,后续会持续更新,希望能帮助到更多的学习者。文中如有不妥之处,希望大家指出共同学习,欢迎大家一起补充。npm章节npm安装依赖报错:permissiondenied,报错信息大致如下:npmERR!15.6.0npm错误!argvnpm错误!节点npm错误!npmnpm错误!路径npm错误!代码EACCESnpm错误!errno-13npm错误!系统调用mkdir错误!错误:EACCES:权限被拒绝,mkdirnpmERR!在错误(本机)npmERR!{错误:EACCES:权限被拒绝,mkdirnpmERR!在错误(本机)npmERR!errno:-13,关键错误信息:Error:EACCES:permissiondenied,解决方案://以win管理员身份运行cmd然后npm命令//全局添加sudosudoformacnpminstall....npminstall报错chromedriverrecord,报错信息如下:npmERR!代码ELIFECYCLEnpm错误!错误号1npm错误!chromedriver@2.34.1安装:`nodeinstall.js`npm错误!退出状态1npmERR!错误!在chromedriver@2.34.1安装script.npmERR时失败!这可能不是npm的问题。上面可能有额外的日志输出。这个问题是vue-cli脚手架的bug,解决办法:npminstallchromedriver--chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriverroadhog文章roadhogdefinesmorethanone/separatorroutematchingerror,报错消息如下:UnhandledRejection(Error):Loadingchunk3failed。HTMLScriptElement.onScriptCompleteinternal:/webpack/bootstrapdf2d9286a38225b2cb63:756此屏幕仅在开发中可见。如果应用程序在生产中崩溃,它不会出现。打开浏览器的开发人员控制台以进一步检查此错误。解决方案:在.webpackrc或.roadhogrc中添加"publicPath":"/"roadhog下的.webpackrc或.webpackrc.js、.roadhogrc或.roadhogrc.js配置项有错误。报错信息如下:Buildfailed:Cannotreadproperty'validate'ofundefinedTypeError:Cannotreadproperty'validate'ofundefinedatforEach.key(/Users/apple/jobs/reacts/react-antd-dva/node_modules/af-webpack/lib/getUserConfig/index.js:147:16)在Array.forEach()在getUserConfig(/Users/apple/jobs/reacts/react-antd-dva/node_modules/af-webpack/lib/getUserConfig/index.js:131:30)at/Users/apple/jobs/reacts/react-antd-dva/node_modules/roadhog/lib/build.js:41:49atnewPromise()atnewF(/Users/apple/jobs/reacts/react-antd-dva/node_modules/core-js/library/modules/_export.js:35:28)在_default(/Users/apple/jobs/reacts/react-antd-dva/node_modules/roadhog/lib/build.js:34:10)在Object.(/Users/apple/jobs/reacts/react-antd-dva/node_modules/roadhog/lib/scripts/build.js:9:20)在Module._compile(module.js:643:30)在Object.Module._extensions..js(module.js:654:10)在Module.load(module.js:556:32)在tryModuleLoad(module.js:499:12)在Function.Module._load(module.js:491:3)在Function.Module.runMain(module.js:684:10)在启动时(bootstrap_node.js:187:16)在bootstrap_node.js:608:3[graceful-process#10592]退出code:0解决方法:查看roadhog文档,确认配置项的正确性!尤其是roadhog1.0到2.0很多配置项的变化!具体可以参考roadhog文档git章节。使用.gitkeep跟踪空文件夹解决方案:Git会忽略空文件夹。如果您希望版本控制包含空文件夹,按照惯例,.gitkeep文件将放在空文件夹下。其实对于文件名并没有具体的要求。一旦空文件夹包含文件,该文件夹就处于版本控制之下。在使用git命令拉取最新代码时,有时会遇到如下提示,在项目根目录下(如/StudioProjects/demo/Leave)找到了一个名为“.git/.MERGE_MSG.swp”的交换文件,找到.git/.MERGE_MSG.swp文件删除即可。注意:macdelete命令rm-rf.MERGE_MSG.swpeslint副作用不要使用'new'代码如下:newVue({el:'#app',router,template:'',components:{App}})错误:原因:以下评论已被删除。这个注释可以绕过规则检测:/*eslint-disableno-new*/在newVue()上面添加注释即可:/*eslint-disableno-new*/newVue({el:'#app',router,template:'',components:{App}})vue-cli构建的项目,eslint一直报标题中的CRLF/LF换行错误,vue在构建项目时选择了airbnb规则,同时一次,项目建好后,被windows的unixbash工具pull和push。之后在windows上开发时,开始报Expectedlinebreakstobe'CRLF'butfound'LF'之类的错误。查了一下,是一种强制统一的方法,解决方法是换行式:["error","windows"]强制使用windows方法,我在.eslintrc.js中的rule字段中添加了项目根目录中的文件://在此处添加自定义规则'rules':{//导入时不需要.vue扩展'import/extensions':['error','always',{'js':'never','vue':'never'}],//允许optionalDependencies'import/no-extraneous-dependencies':['error',{'optionalDependencies':['test/unit/index.js']}],//尝试修复换行问题'linebreak-style':["error","windows"],//在开发期间允许调试器'no-debugger':process.env.NODE_ENV==='公关生产'?2:0}结果无效。存在两个问题:1.是不是因为系统环境不同导致某种强制转换导致出现上述错误?2、如何有选择地关闭eslint的某个功能(换行检查)?问题1在不同的操作系统下,即使是不同的编辑器,不同工具处理的文件也可能会导致换行符的变化。问题2项目根目录下有一个.eslintrc.js文件。修改配置文件中的rule配置项,如下:```javascript//统一换行,"\n"unix(forLF)and"\r\n"forwindows(CRLF),defaultunix//offor0:disablerule'linebreak-style':'off'```nuxt文章报错信息:“TypeError:Nuxtisnotaconstructor”——当尝试使用nuxt.js作为中间件时我对比官方文档https://zh.nuxtjs.org/api/con...,出现如下错误:constnuxt=newNuxt(config)^TypeError:Nuxtisnotaconstructorrequire('./nuxt.config.js')config.dev=(process.env.NODE_ENV!=='production')letnuxt=newNuxt(config)//开始构建过程(仅在开发中)if(config.dev){newBuilder(nuxt).build()}