Dynamic require of "file:///D:/vue/innovation/node_modules/webpack/lib/index.js" is not supported
时间: 2023-08-12 22:07:39 浏览: 65
这个错误提示是因为在浏览器端尝试使用 Node.js 的 require() 方法加载模块,而浏览器是不支持这种方式的。
在浏览器端使用 webpack 进行打包时,webpack 会将所有的模块打包成一个或多个 bundle 文件,然后在浏览器端通过 script 标签引入。因此,在浏览器端使用 require() 方法加载模块是无效的。
如果你需要在浏览器端动态加载模块,可以考虑使用其他的模块加载器,如 RequireJS 或 SystemJS 等。或者,在使用 webpack 进行打包时,可以通过配置 externals 属性,将某些模块排除在 bundle 之外,以便在浏览器端通过其他方式加载这些模块。
相关问题
vue报错 referenceerror: exports is not defined at ./node_modules/@babel/runt
这个错误通常是由于在浏览器环境下使用了 CommonJS 规范的代码所导致的。在浏览器环境下,没有 `exports` 和 `module` 这样的 Node.js 模块系统的全局变量,因此会报错。
解决方法是使用 Webpack 等构建工具将代码打包成浏览器可识别的代码。或者使用浏览器端的模块加载器(如 Require.js)来加载模块化的代码。另外,也可以检查一下代码中是否有错误的引用了 Node.js 模块系统的全局变量。
AxiosError: Network Error at XMLHttpRequest.handleError (webpack-internal:///./node_modules/axios/lib/adapters/xhr.js:158:14)
AxiosError: Network Error是由于浏览器的跨域安全策略导致的。浏览器限制了跨域请求,只有在服务端设置了响应头Access-Control-Allow-Origin时,才允许跨域请求。解决方案是修改前端配置,具体步骤如下:
1. 修改vue.config.js文件,添加proxy配置:
```javascript
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
transpileDependencies: true,
devServer: {
proxy: {
'/api': {
target: 'http://localhost:8088',
changeOrigin: true,
pathRewrite: {
'/api': ''
}
}
}
}
})
```
2. 在前端代码中使用axios时,将请求的url改为相对路径,例如:
```javascript
axios.get('/api/data')
.then(response => {
console.log(response.data)
})
.catch(error => {
console.log(error)
})
```
这样就可以解决AxiosError: Network Error的问题了。