Убедившись, что процесс сборки полимера не связан с зависимостью моего элемента

Я создал пользовательский элемент / веб-компонент для загрузки и отображения сгенерированного Unity контента WebGL. Веб-компонент импортирует модуль UnityLoader.js и прекрасно работает, когда используется в приложении, снабженном "полимерной подачей".

Тем не менее, когда я создаю приложение, использующее мой веб-компонент через процесс сборки Polymer-CLI, никаких ошибок не возникает, но когда я захожу на страницу, используя свой компонент, я всегда получаю сообщение об ошибке изнутри UnityLoader.js:

"ReferenceError: BabelHelpers is not defined" 

Если я создаю элемент непосредственно в своем приложении (другими словами, он больше не управляется bower), то я могу исключить этапы минификации и компиляции в разделе сборки файла poly.json моего приложения, и встроенная версия приложения работает нормально.,

  "builds": [
{
  "preset": "es5-bundled",
  "js": {
    "compile": {"exclude": ["content/**/*","UnityLoader.js"]},
    "minify": {"exclude": ["content/**/*","UnityLoader.js"]}
    },
    "html": {
      "minify": {"exclude": ["content/**/*"]}
    }
}
]

Я посмотрел на файл Polymer.json моего приложения и вижу, что узел extraDependecies содержит некоторые зависимости, которые были размещены другими веб-компонентами:

"extraDependencies": [
  "bower_components/webcomponentsjs/*.js",
  "!bower_components/webcomponentsjs/gulpfile.js",
  "manifest.json",
  "bower_components/plastic-image/intersection-observer.js",
  "bower_components/ua-parser-js/dist/ua-parser.min.js"
  ],

У меня есть UnityLoader.js внутри extraDependencies элемента Polymer.json, но это не распространяется каскадом на приложение, которое импортирует / потребляет элемент - что, я думаю, должно быть возможным, как сделали пластик-образ и ua-parser-js это (я посмотрел на их папки bower_components и ничего не кажется очевидным - кроме последнего, установленного как зависимость первого).

Любые идеи о том, как я могу убедиться, что UnityLoader.js, который использует мой веб-компонент, не скомпилированы или минимизированы в процессе сборки приложения, которое его использует?

1 ответ

У меня была похожая проблема с firebase-auth.js при сборке ES5 с использованием polymer-cli 1.7.0, При компиляции / минимизации определенных файлов может возникнуть проблема. Мне пришлось откатиться на 1.6.0 с помощью npm install -g polymer-cli@1.6.0 решить проблему.

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