Как заставить приложение vuejs работать с IE 11 при использовании feathersjs

При создании стандартного приложения vue (с использованием vue-cli v3.0) и включении @feathersjs/feathers чтобы реализовать соединение с API перьев, я получаю сообщение об ошибке с Internet Explorer 11 (SCRIPT1010: Expected identifier)

Суть в том, чтобы найти простой способ решения таких проблем, потому что в больших проектах можно легко найти множество проблем с библиотеками, а иногда необходимо поддерживать хотя бы одну версию Internet Explorer (по крайней мере, с точки зрения бизнеса).

Я прочитал на сайте перьев ( https://docs.feathersjs.com/api/client.html), что библиотека использует ES6, поэтому в этом случае она должна быть передана для работы в браузере, таком как IE11.

Я попробовал это, но не повезло:

// vue.config.js
module.exports = {
  baseUrl: '/',
  transpileDependencies: [
    '@feathers/commons',
    '@feathers/errors',
    '@feathers/feathers',
    'debug'
  ]
}

и получил ошибки даже в хроме: Uncaught ReferenceError: exports is not defined

Я создал проект, чтобы показать эту ошибку: https://github.com/riescorp/vue-internet-explorer

Нужно уметь использовать IE11 для этого приложения, даже если оно не работает быстро или выглядит красиво, но работает.

2 ответа

Мне наконец удалось решить эту проблему.

Это babel.config.js Конфиг, который делает трюк:

module.exports = {
  presets: ['@vue/app'],
  plugins: ['@babel/transform-modules-commonjs']
}

Также была опечатка в моем vue.config.js это должно выглядеть так:

// vue.config.js
module.exports = {
  baseUrl: '/',
  transpileDependencies: [
    '@feathersjs',
    'debug'
  ]
}

Наконец, при использовании перьев эта строка не будет работать:

.configure(restClient.fetch(window.fetch))

так что вы можете использовать import 'whatwg-fetch' решить (не забудьте установить npm i whatwg-fetch)

Я считаю, что процесс должен быть таким же, как и следование указаниям на веб-сайте Vuetify в разделе этой страницы, озаглавленном "Поддержка IE11 и Safari 9" (прокрутите вниз): https://vuetifyjs.com/en/getting-started/quick-start

Мне не нужно было делать ничего другого в моих проектах, что я помню.

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