javascript - 如何包含用于发布自定义 polymer 元素的外部脚本文件?

标签 javascript html polymer web-component

我有以下具有以下依赖项的 polymer 元素:

  • box-elplayer-el 其他 polymer 元素
  • GameControllerKeyboardInputManager 类在外部文件 game_controller.js 中定义。

问题是,我如何打包并发布这个元素作为独立元素,这样它对于customelements.io来说是合法的。 .

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

<polymer-element name="soko-ban">
  <template>
    <link rel="stylesheet" href="soko-ban.css">
    <template repeat="{{box in boxes}}">
      <box-el model="{{box}}"></box-el>
    </template>
    <player-el model="{{player}}" id="character"></player-el>
  </template>
  <script>
    (function () {
      'use strict';

      Polymer({
       ready: function() {

         var controller = new GameController();

         this.player = model.player;
         this.boxes = model.boxes;

         var inputManager = new KeyboardInputManager();
       });

     })();
  </script>
</polymer-element>

请注意,我知道如何发布此元素,我询问如何包含列出的依赖项,即我编写的​​其他 Polymer 元素以及外部脚本文件。

最佳答案

实际上并不难,但您需要按特定顺序执行几个步骤。

我在这里看到两个问题需要解决:

  1. 依赖关系解析和管理
  2. 发布到 Bower 和 customelements.io

使用 webcomponents.org 解决方案

如果这是您迄今为止唯一的文件,请使用 Git 获取 generator-element polymer-boilerplate 。这些正在迅速成为 polymer 元素存储库结构的标准。将其中主要元素的 html 文件替换为您的文件。

引用

distribution article building & publishing article Bower & Polymer video

管理依赖项

您将需要安装依赖项元素并在组件中引用它们。使用 .bowerrc 确定依赖项将安装到的位置并使用 bower install --save <dep1> <dep2>安装它们。像这样导入 polymer 后引用它们 -

<link rel="import" href="../../bower_components/polymer/polymer.html">
<link rel="import" href="relative/path/to/my/first/bower/dependency">
<link rel="import" href="relative/path/to/my/second/bower/dependency">

验证您的依赖关系是否已解决并且您的元素是否可以正常工作。 blish 在 Bower.json 中使用关键字“web-components”(如果您使用 generator-elementpolymer-boilerplate ,则应该已经存在)

关于javascript - 如何包含用于发布自定义 polymer 元素的外部脚本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25951777/

相关文章:

javascript - 为什么 Safari 或 Firefox 无法处理来自 MediaElementSource 的音频数据?

javascript - polymer 应用程序的正确文件夹结构是什么?

javascript - 是否可以获得有关浏览器颜色的信息?

javascript - jQuery:根据文本值对 <a> 链接进行分组

html - Styling polymer - 一次适用于所有浏览器

polymer - Polymer 3.0 中的去抖器

php - 将 php 多维数组分配给 javascript 数组

javascript - 如何将 sipML5 js 与 Mobicent SIP servlet 一起使用?

Javascript 通过操作确认?

javascript - ngClass : Check if input has value with angular