首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Swiper.js反应编译失败

Swiper.js反应编译失败
EN

Stack Overflow用户
提问于 2022-11-18 16:44:12
回答 3查看 82关注 0票数 1

我正在尝试更新swiper.js

我用的是6.8.2

现在我想把它升级到一个更新的版本7.4.1

我的应用程序是用React和Node编写的(我不使用Next.js)和Node版本: v14.11.0

下面是我的组件代码的样子

代码语言:javascript
复制
import React from 'react'
import { Swiper, SwiperSlide } from 'swiper/react'

const CustomView = () => {

  return (
      <Swiper>
      </Swiper>
  )
}


export default CustomView

当我运行它时,我在终端中得到以下错误

代码语言:javascript
复制
"message":"Must use import to load ES Module: /Users/Projects/ReactStarter/node_modules/swiper/react/swiper-react.js\nrequire() of ES modules is not supported.

然后,我将Import更改为:

代码语言:javascript
复制
import { Swiper, SwiperSlide } from 'swiper/react/swiper-react.js'

在终端错误中打印:

代码语言:javascript
复制
"message":"Package subpath './react/swiper-react.js' is not defined by \"exports\"

有什么办法可以绕过这个问题吗?因为我使用的是webpack,所以也许我可以忽略它或者别的什么

EN

回答 3

Stack Overflow用户

发布于 2022-11-27 08:05:49

你能试一下候机楼吗?

  1. npm cache clean --force
  2. npm rm -rf node_modules

并重新安装3. npm i

票数 0
EN

Stack Overflow用户

发布于 2022-11-27 08:49:53

看起来,next.js的一个问题是,一个临时修复程序将将experimental.esmExternals更改为next.config.js中的loose,并跟踪这条线以获得有关此问题的更多更新。

代码语言:javascript
复制
module.exports = {
  experimental: {
    esmExternals: "loose",
  }
};
票数 0
EN

Stack Overflow用户

发布于 2022-11-27 17:15:42

更新库可能不是一个选项。考虑到您使用的是React 18. https://github.com/nolimits4web/swiper/issues/4871

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74492856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档