微信小程序报错: SyntaxError: Cannot use import statement outside a module

微信小程序数据绑定,导包出现了:

"SyntaxError: Cannot use import statement outside a module"

排查问题步骤记录,共勉

1.出现问题代码:

css 复制代码
import {createStoreBindings} from "mobx-miniprogram-bindings"

import {store} from "../../store/store"

2.解决问题

  • 2.1. 使用const {} = require(" ")代替import {} from ' '
css 复制代码
  //原代码:
  
  import {createStoreBindings} from "mobx-miniprogram-bindings"
  
  import {store} from "../../store/store"

  //替换代码:
  
  //没报错
  const {createStoreBindings} = require("mobx-miniprogram-bindings") 
  
  //报"找不到文件或者变量"
  const {store} = require("../../store/store")  

注:const {} = require() 不能彻底解决问题,换种方法

  • 2.2.点击详情(右上角),选择本地设置,将js编译成es5 选项 选中,重新编译下

3.结论:

在这篇文章中,我们了解了"SyntaxError:无法在模块之外使用 import 语句"的错误以及如何修复它

更具体描述:这是当您尝试在同一项目中混合使用 ESM 和 CommonJS 模块系统时引起的

要解决此问题:

1.您必须继续使用 CommonJS 模块系统并使用关键字require

2.整个项目完全切换到 ESM 模块系统并使用关键字import

相关推荐
远山枫谷3 小时前
一文理清页面/组件通信与 Store 全局状态管理
前端·微信小程序
木易士心1 天前
一文读懂:微信小程序云数据库直连原理与使用指南
微信小程序·serverless
明月_清风2 天前
小程序云函数:从入门到全栈的“降维打击”指南
前端·微信小程序·小程序·云开发
拉不动的猪2 天前
移动端调试工具VConsole初始化时的加载阻塞问题
前端·javascript·微信小程序
WangHappy4 天前
不写 Canvas 也能搞定!小程序图片导出的 WebView 通信方案
前端·微信小程序
小时前端4 天前
微信小程序选不了本地文件?用 web-view + H5 一招搞定
前端·微信小程序·uni-app
icebreaker5 天前
Weapp-vite:原生模式之外,多一种 Vue SFC 选择
前端·vue.js·微信小程序
icebreaker5 天前
重走 Vue 长征路 Weapp-vite:编译链路与 Wevu 运行时原理拆解
前端·vue.js·微信小程序
大米饭消灭者8 天前
Taro是怎么实现一码多端的【底层原理】
微信小程序·taro
FliPPeDround9 天前
Vitest Environment UniApp:让 uni-app E2E 测试变得前所未有的简单
微信小程序·e2e·前端工程化