关于(function (exports, require, module) { import Koa from 'koa' SyntaxError: Unexpected identifier

关于(function (exports, require, module, __filename, __dirname) { import Koa from ‘koa’ SyntaxError: Unexpected identifier

一、问题

关于Nuxt配置的项目,在配置server的时候,遇到一系列的bug,import导入的包出错,而配置里默认的const *** = require(’ *** ')
在这里插入图片描述
可以通过const 导入Koa,但还是想用import导入

于是发现还可以使用babel去处理

二、解决

安装 npm i babel-cli babel-preset-es2015

修改package.json,结合babel处理
在这里插入图片描述
在这里插入图片描述
再去项目根目录新建一个.babelrc文件,加上这段代码
在这里插入图片描述
重新运行项目 npm run dev 解决了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,当浏览器报错"Uncaught SyntaxError: Unexpected token import"时,可能是由于浏览器不支持ES6的模块导入语法导致的。解决这个问题的方法有两种: 1. 使用Babel进行转译:Babel是一个广泛使用的JavaScript编译器,可以将ES6的代码转换为浏览器可以理解的ES5代码。你可以在项目中配置Babel,以便将ES6的模块导入语法转换为ES5的模块导入语法。具体步骤如下: - 安装Babel相关的依赖: ```shell npm install --save-dev @babel/core @babel/preset-env ``` - 在项目根目录下创建一个`.babelrc`文件,并配置Babel的预设: ```json { "presets": ["@babel/preset-env"] } ``` - 在项目中使用Babel进行转译: ```shell npx babel src --out-dir dist ``` - 在转译后的代码中,ES6的模块导入语法会被转换为ES5的模块导入语法,从而解决"Uncaught SyntaxError: Unexpected token import"的问题。 2. 使用Webpack进行打包:Webpack是一个常用的模块打包工具,可以将多个JavaScript文件打包成一个文件,并且可以对代码进行转译和优化。你可以在Webpack的配置中使用Babel进行转译,以解决浏览器不支持ES6的模块导入语法的问题。具体步骤如下: - 安装Webpack和Babel相关的依赖: ```shell npm install --save-dev webpack webpack-cli babel-loader @babel/core @babel/preset-env ``` - 在项目根目录下创建一个`webpack.config.js`文件,并配置Webpack和Babel的相关配置: ```javascript const path = require('path'); module.exports = { entry: './src/index.js', output: { filename: 'bundle.js', path: path.resolve(__dirname, 'dist'), }, module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: 'babel-loader', options: { presets: ['@babel/preset-env'], }, }, }, ], }, }; ``` - 在项目中使用Webpack进行打包: ```shell npx webpack ``` - 打包后的代码会被转译为ES5的模块导入语法,从而解决"Uncaught SyntaxError: Unexpected token import"的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值