从静态访问 Polymer3.0 自定义元素 html

Access Polymer3.0 custom elements from static html

我创建了一个自定义 Polymer3.0 元素。当我做 ploymer serve.

时它工作正常

我们有一个内部企业 NPM 注册表,我向其发布了我的元素。

现在我想在一个完全不同的项目(只有静态 HTML/JS)中使用这个元素,并由 NGNIX 服务器提供服务。

我能够解决这个问题(事实上是我没有查看 polymer.json 中的所有选项)。

如果有人感兴趣,请关注我所做的..

  • 在我的 ploymer.json 中,我添加了以下内容
    • shell 属性 of json 指向我的自定义元素 js 文件
    • 我也加了js属性,"compile":true..

以下是我的 polymer.json 的样子

...
"shell": "xxxxx.js",
"builds":[
{
  "name": "prod",
  "preset": "es6-bundled",
  "bundle":true,
  "moduleResolution": "node",
  "addServiceWorker": true,         
  "inlineCss": true,          
  "inlineScripts": true,      
  "rewriteUrlsInTemplates": true, 
  "sourcemaps": true,     
  "stripComments": true,     
  "js": {"minify":true, "compile":true},
  "css": {"minify":true},
  "html":{"minify":true}
},
...

我将 build/ 文件夹中的文件复制到我的 nginx 服务器,并将它们作为常规文件夹托管。当然,我将 add_header Access-Control-Allow-Origin *; 添加到我的 conf 文件

在我的静态 HTML 中导入我的组件我所要做的就是

<script src="https://unpkg.com/@webcomponents/webcomponentsjs@2.4.3/webcomponents-loader.js"></script>
 <script type="module" src="http://XXX_MY_NGINX_VIRTUAL_HOST_XXXX/my-custom-element.js"></script>