首页 > 解决方案 > swiperjs es 模块构建在 IE11 浏览器中不起作用

问题描述

我正在使用webpackwithbabel来转译模块,在将swipernpm 包添加到构建后,IE11 浏览器停止工作,因为dom7依赖项没有正确转译。swiper's 这在入门页面上已指出,但尚不清楚必须采取什么措施来解决该问题。

标签: babeljswebpack-4swiperdom7

解决方案


经过几天的研究和多次尝试,我终于让它工作了。

需要注意的重要一点是,您必须使用babel.config.js而不是.babelrc这样node_modules才能将其包含在构建中。

最终配置:

babel.config.js(仅相关部分):

module.exports = {
  "presets": [
    ["@babel/env", {
      "targets": {
        "ie": "11"
      }
    }],...

webpack.config.js(仅相关部分):

test: /\.js$/,
exclude: /node_modules\/(?!(swiper|dom7)\/).*/,
rules: [
   {
     use: [{
       loader: 'babel-loader',
       options: {
         cacheDirectory: true,
         babelrc: false,
         rootMode: 'upward'
       }
     }]
   }
 ]

这是让我走向正确方向的文章(请参阅 RyanGosden 的评论)- https://www.bountysource.com/issues/79144083-not-working-in-ie11

希望可以帮助其他人节省一些时间!


推荐阅读