文章目录
标题记录开发时遇到的一个小问题
开发时遇到如下报错
ValidationError: Invalid options object. Dev Server has been initialized using an options object that does not match the API schema.
- options has an unknown property ‘before’. These properties are valid:
object { allowedHosts?, bonjour?, client?, compress?, devMiddleware?, headers?, historyApiFallback?, host?, hot?, http2?, https?, ipc?, liveReload?, magicHtml?, onAfterSetupMiddleware?, onBeforeSetupMiddleware?, onListening?, open?, port?, proxy?, server?, setupExitSignals?, setupMiddlewares?, static?, watchFiles?, webSocketServer? }
根据错误提示可知,before已经被移除。
我之前创建项目时用的vue/cli是5.0.0版本。before的功能已经被修改成其他的API。找到node_modules/@vue/cli-service/lib/commands/serve.js文件。可以发现vue/cli@4.5.0与vue/cli@5.0.0的区别。
通过上图可以看到vue/cli@4.5.0中的before已经融合到vue/cli@5.0.0中,为了解决这个问题,也为了以后开发更加稳定,我采取了降cli版本的方法重新搭建项目。
$ npm uninstall -g @vue/cli //卸载当前版本
$ npm install -g @vue/cli@版本号 // 例如npm install -g @vue/cli@4.5.0
最终问题解决。