Firebase hosting не зарегистрирует Polymer

#firebase #polymer-1.0 #firebase-hosting

#firebase #polymer-1.0 #firebase-хостинг

Вопрос:

У меня есть каркас приложения, созданный с:

 polymer init
  

с помощью файла polymer.json, который выглядит как

 {
  "entrypoint": "index.html",
  "shell": "src/my-app.html"
}
  

затем:

 firebase init
  

С firebase.json, который выглядит как:

 {
  "database": {
  "rules": "database.rules.json"
  },
  "hosting": {
    "public": "build/bundled",
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}
  

Если я запускаю polymer build исходную структуру приложения, созданную, polymer init а затем нажимаю на хостинг, firebase deploy я получаю эти ошибки (в консоли JS) при попытке открыть сайт на Firebase hosting:

 webcomponents-lite.js:1 Uncaught SyntaxError: Unexpected token <
webcomponents-lite.js:1 Uncaught SyntaxError: Unexpected token <
my-app.html:13 Uncaught ReferenceError: Polymer is not defined
  

для справки, вот index.html :

 <!doctype html>

<html>
  <head>
    <title>Snappy Title</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="manifest" href="/manifest.json">
    <script src="/bower_components/webcomponentsjs/webcomponents-lite.js"></script>
    <link rel="import" href="/src/my-app/my-app.html">
  </head>
  <body>
    <my-app></my-app>
  </body>
</html>
  

и my-app.html :

 <link rel="import" href="../../bower_components/polymer/polymer.html">

<dom-module id="my-app">
  <template>
    <style>
      :host {
        display: block;
      }
    </style>
    <h2>Hello [[prop1]]</h2>
  </template>

  <script>
    Polymer({

      is: 'my-app',

      properties: {
        prop1: {
        type: String,
        value: 'my-app',
         },
       },
     });
  </script>
</dom-module>
  

оба этих файла создаются автоматически с помощью polymer init

Примечание: Даже если я отправляю код, не связанный с сборкой, через Firebase Hosting, ошибки остаются прежними.

Ответ №1:

Вероятность того, что проблема возникает из-за webcomponentsjs полизаполнения, выше. Убедитесь, что webcomponentsjs polyfill можно найти в вашем build каталоге. Должно быть, он отсутствует или вы забыли включить его в свой polymer.json , если вы используете polymer-cli .

Комментарии:

1. Добавление webcomponentsjs к атрибуту includeDependencies в polymer.json устранило ошибки. Спасибо за совет!