vue项目启动运行本地Local地址5173页面生成,去点击使用任意功能就会报错,如何解决?(关键词-Network)

vue项目启动运行本地Local地址5173端口页面有生成,但是去点击使用任意功能就会报错。而再开另一个端口5174或者使用Network都没有问题。请问这是什么原因?要怎么解决呢

该回答引用ChatGPT
这个问题可能是由于你的 Vue 项目在启动的时候,5173端口被占用了。如果你在本地起了一个后端服务或者其他应用程序占用了该端口,那么Vue项目将无法使用该端口,导致出现错误。

解决方法有两个:

找到占用该端口的应用程序并停止它,这样你的 Vue 项目就可以使用该端口了。
在你的 Vue 项目启动时,使用另一个端口(比如5174)。
如果你无法找到占用该端口的应用程序,可以尝试在命令行输入 netstat -ano,这会显示所有占用端口的进程,然后通过进程ID找到该进程并停止它。

如果你使用的是 Vue CLI 3,你可以在 package.json 文件中的 scripts 部分中设置 port 参数来改变项目运行的端口。比如

"scripts": {
  "serve": "vue-cli-service serve --port 5174"
},


该回答引用GPTᴼᴾᴱᴺᴬᴵ
这种情况可能是由于跨域问题引起的。在浏览器中,为了保证网站的安全性,有同源策略限制,不允许通过 XMLHttpRequest 或 Fetch 等方式跨域请求数据,也就是说,如果你的前端代码运行在一个端口上,而后端代码运行在另一个端口上,那么就会出现跨域问题。
-
解决跨域问题可以采取以下两种方式:
1.在后端服务中添加 CORS 头信息

在后端服务中添加 CORS 头信息,允许来自其他源的请求。例如,使用 Node.js 和 Express 框架可以这样设置:

const express = require('express');
const app = express();

app.use(function(req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
    next();
});

上面的代码中,Access-Control-Allow-Origin 允许来自所有源的请求,Access-Control-Allow-Headers 指定允许的请求头。

2.在前端服务中配置代理

在前端服务中配置代理,将跨域请求转发到后端服务。例如,在 Vue CLI 项目中可以使用 vue.config.js 文件中的 devServer.proxy 配置项实现代理,如下所示:

module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
  }
};

上面的代码中,将以 /api 开头的请求转发到 http://localhost:3000,其中 changeOrigin: true 会设置代理服务器的 host 头信息为目标 URL 的 host 头信息,pathRewrite 可以将请求路径重写为不包含 /api 前缀的路径。

希望以上方法可以帮助你解决问题。