2

Currently I migrate a Polymer 2.0 app to Polymer 3.0. But at the moment understandably a lot of components are still not migrated, yet (like e.g vaadin-gid as one example).

How can I use these Polymer 2 components in my migrated Polymer 3 app?

4

2 回答 2

1

基本上将此代码添加到<head>并删除/bower_components/polymer文件夹

<script type="module">
        import {PolymerElement} from '@polymer/polymer/polymer-element.js';

        window.Polymer = {
            Element: PolymerElement
        };

        window.loadElement = function(filename) {
            var l = document.createElement('link');
            l.rel = 'import';
            l.href = filename
            var h = document.getElementsByTagName('head')[0];
            h.parentNode.insertBefore(l, h);
        }
        // Load de main element
        loadElement('/main-poly2.html');
</script>

在聚合物 2 中加载聚合物 3 元素

<script type="module">
        import './poly3-element'

        class MainPoly2 extends Polymer.Element {
            ...
        }
</script>

在聚合物 3 中加载聚合物 2 元素

import {PolymerElement, html} from '/node_modules/@polymer/polymer/polymer-element.js';
loadElement('/poly2-element.html');

class Poly3Element extends PolymerElement {
    ....
}

我写了一个例子:

https://github.com/herberthobregon/polymer2-3

它有效,但如果实施正确,聚合物团队没有回答我,但有效

于 2018-05-23T00:33:48.850 回答
0

我的解决方案是使用聚合物调制器将聚合物 2.0 元件升级到聚合物 3.0

[ https://polymer-library.polymer-project.org/3.0/docs/upgrade][1]

于 2019-05-06T11:05:12.387 回答