vue3+ts配置跨域报错问题解决:> newpro2@0.1.0 serve > vue-cli-service serve ERROR Invalid options in vue.

简介: 【6月更文挑战第3天】在 Vue CLI 项目中遇到 "ERROR Invalid options in vue.config.js: ‘server’ is not allowed" 错误是因为尝试在 `vue.config.js` 中使用不被支持的 `server` 选项。正确配置开发服务器(如代理)应使用 `devServer` 对象,例如设置代理到 `http://xxx.com/`:```javascriptmodule.exports = { devServer: {

报错内容

newpro2@0.1.0 serve

vue-cli-service serve

ERROR Invalid options in vue.config.js: “server” is not allowed

解决方法

错误信息 ERROR Invalid options in vue.config.js: “server” is not allowed 指出在 vue.config.js 文件中存在不允许的选项 “server”。这是因为 vue-cli-service 不支持直接在 vue.config.js 文件中配置 server 选项。

在 Vue CLI 项目中,vue-cli-service serve 命令用来启动一个开发服务器,并且它的配置是通过 vue.config.js 文件来进行的,但不是直接通过 server 这个键。如果你想配置开发服务器的某些选项,你需要使用 Vue CLI 支持的配置项。

如果想配置代理,应该使用 devServer 对象来设置开发服务器的选项,而不是 server。正确的配置方式如下:

const { defineConfig } = require('@vue/cli-service')  
  
module.exports = defineConfig({  
  // 其他配置项...  
  devServer: {  
    proxy: {  
      '/api': {  
        target: 'http://xxx.com/', // 实际请求地址  
        changeOrigin: true,  
        pathRewrite: {  
          '^/api': '' // 移除路径中的 /api  
        }  
      }  
    }  
  }  
})

注意,这里使用了 pathRewrite 而不是 rewrite,因为 vue-cli-service 使用的是 webpack-dev-server 的配置,而 webpack-dev-server 使用的是 pathRewrite 来重写路径。

其他知识分享

当然可以,关于 Vue CLI 和 vue.config.js 的配置,这里有一些扩展的知识内容可以帮助你更深入地理解:

Vue CLI 概述

Vue CLI 是一个基于 Vue.js 的全功能项目脚手架,它提供了丰富的插件系统和可配置的项目模板,帮助开发者快速搭建和启动 Vue.js 项目。通过 Vue CLI,你可以轻松管理项目的依赖、构建配置、代码风格等。

vue.config.js 的作用

vue.config.js 是一个可选的配置文件,位于项目的根目录下。这个文件允许你修改默认的 webpack 配置,以及 Vue CLI 插件的选项。通过编辑 vue.config.js,你可以定制构建输出、添加 loader 或插件、调整开发服务器的行为等。

Vue CLI 支持的配置项

Vue CLI 支持很多配置项,这些配置项都可以在 vue.config.js 中进行设置。以下是一些常见的配置项:

publicPath:用于指定部署应用时的基本路径。

outputDir:构建输出目录。

assetsDir:放置生成的静态资源(js、css、img、fonts)的目录。

indexPath:指定生成的 index.html 的输出路径(相对于 outputDir)。

devServer:开发服务器的配置选项,包括代理、端口、热重载等。

transpileDependencies:需要用 Babel 转译的依赖列表。

css:CSS 相关的配置项,如是否提取 CSS 到单独的文件中。

chainWebpack:修改内部的 webpack 配置链。

configureWebpack:修改 webpack 配置。

pluginOptions:为 Vue CLI 插件提供选项。

开发服务器配置(devServer)

在 vue.config.js 中,你可以通过 devServer 对象来配置开发服务器的行为。常见的配置选项包括:

port:开发服务器运行的端口号。

open:是否在服务器启动时打开浏览器。

hotOnly:是否仅启用热模块替换功能。

proxy:为开发服务器配置代理。

before:在服务器启动之前执行的函数。

after:在服务器关闭之后执行的函数。

注意事项

当在 vue.config.js 中添加配置项时,请确保这些配置项是 Vue CLI 支持的,并且按照正确的格式和语法进行设置。

Vue CLI 的版本不同,其支持的配置项和语法也可能有所不同。因此,在配置时,最好查阅对应版本的官方文档。

如果不确定某个配置项的作用或用法,可以在官方文档中搜索该配置项,或者查看 Vue CLI 的示例项目和社区教程。

通过深入了解和掌握 Vue CLI 和 vue.config.js 的配置,可以更加灵活地定制你的 Vue.js 项目,提高开发效率和项目质量。

您好,我是肥晨。

欢迎关注我获取前端学习资源,日常分享技术变革,生存法则;行业内幕,洞察先机。

目录
相关文章
|
6天前
|
开发工具 iOS开发 MacOS
基于Vite7.1+Vue3+Pinia3+ArcoDesign网页版webos后台模板
最新版研发vite7+vue3.5+pinia3+arco-design仿macos/windows风格网页版OS系统Vite-Vue3-WebOS。
106 10
|
1月前
|
缓存 前端开发 大数据
虚拟列表在Vue3中的具体应用场景有哪些?
虚拟列表在 Vue3 中通过仅渲染可视区域内容,显著提升大数据列表性能,适用于 ERP 表格、聊天界面、社交媒体、阅读器、日历及树形结构等场景,结合 `vue-virtual-scroller` 等工具可实现高效滚动与交互体验。
249 1
|
1月前
|
缓存 JavaScript UED
除了循环引用,Vue3还有哪些常见的性能优化技巧?
除了循环引用,Vue3还有哪些常见的性能优化技巧?
145 0
|
9天前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
105 2
|
3月前
|
人工智能 JavaScript 算法
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
534 0
|
5月前
|
JavaScript
vue实现任务周期cron表达式选择组件
vue实现任务周期cron表达式选择组件
755 4
|
3月前
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能
|
4月前
|
JavaScript 数据可视化 前端开发
基于 Vue 与 D3 的可拖拽拓扑图技术方案及应用案例解析
本文介绍了基于Vue和D3实现可拖拽拓扑图的技术方案与应用实例。通过Vue构建用户界面和交互逻辑,结合D3强大的数据可视化能力,实现了力导向布局、节点拖拽、交互事件等功能。文章详细讲解了数据模型设计、拖拽功能实现、组件封装及高级扩展(如节点类型定制、连接样式优化等),并提供了性能优化方案以应对大数据量场景。最终,展示了基础网络拓扑、实时更新拓扑等应用实例,为开发者提供了一套完整的实现思路和实践经验。
539 77
|
2月前
|
JavaScript 安全
在 Vue 中,如何在回调函数中正确使用 this?
在 Vue 中,如何在回调函数中正确使用 this?
105 0
|
2月前
|
人工智能 JSON JavaScript
VTJ.PRO 首发 MasterGo 设计智能识别引擎,秒级生成 Vue 代码
VTJ.PRO发布「AI MasterGo设计稿识别引擎」,成为全球首个支持解析MasterGo原生JSON文件并自动生成Vue组件的AI工具。通过双引擎架构,实现设计到代码全流程自动化,效率提升300%,助力企业降本增效,引领“设计即生产”新时代。
235 1