Как я могу передать зависимость в node_modules с Nuxt 2?

Я читал о проблемах с транспилированием node_modules с Nuxt, но новый Nuxt 2, как говорят, решил эту проблему с transpile вариант в nuxt.config.js файл.

https://nuxtjs.org/api/configuration-build/

Вот что у меня есть:

export default {
  router: {
    base: '/',
  },
  build: {
    transpile: [
      'choices.js',
      'lazysizes',
      'swiper',
      'vee-validate'
    ],
    extractCSS: true
  },
  srcDir: 'src/',
  performance: {
    gzip: true
  },
  render: {
    compressor: {
      threshold: 100
    }
  },
  dev: false
}

Я удалил несколько вещей, которые не связаны, чтобы было легче читать.

Когда я бегу npm run build (nuxt build) скомпилированные файлы JS содержат ссылки на код es6 и es7, такие как const а также let и т.д., когда это должно быть var,

Я выделил эту проблему, чтобы быть от Swiper. Похоже, что он внутренне зависит от того, что называется Dom7, что, кажется, вызывает проблему.

Я хочу скомпилировать эти node_modules зависимости от es5, если это возможно. Я не уверен, что мои текущие настройки вообще что-то делают в этом отношении.

Я считаю, что Nuxt использует vue-app для Вавилона, но я даже попробовал следующее безуспешно:

babel: {
  presets: [
    '@babel/preset-env'
  ],
  plugins: [
    '@babel/plugin-syntax-dynamic-import'
  ]
}

Там тоже не так много радости. Ничто не выглядит иначе в финальной сборке.

Я использую Nuxt 2.1.0

Любая помощь приветствуется. Спасибо!

1 ответ

Вам также необходимо перенести Dom7, поэтому в конфигурации Nuxt должно быть:

build: {
    transpile: [
      'swiper',
      'dom7',
    ],
}

У меня точно такая же проблема.

Опция вендора при сборке устарела, поэтому она просто игнорируется, я думаю, из того, что я прочитал здесь, https://medium.com/nuxt/nuxt-2-is-coming-oh-yeah-212c1a9e1a67

Мне удалось изолировать мой случай с библиотекой "swiper". Если я удалю это из моего проекта, все ссылки на let, const или же class пропали. Я тоже попробовал опцию транспиляции, но она, похоже, не имеет никакого эффекта.

Будете ли вы пытаться исключить swiper из вашего проекта, чтобы посмотреть, сможем ли мы изолировать проблему?

Другие вопросы по тегам