0

我已经将聚合物发光元件的更新版本从 0.5.2 更新到 0.6.2 并且绑定不起作用我错了什么?

这是html:

<html>
  <head>
     <script src="node_modules/@webcomponents/webcomponentsjs/webcomponents-bundle.js"></script>
    <script src="./node_modules/@webcomponents/webcomponentsjs/custom-elements-es5-adapter.js"></script> 
   
    </head>
  <body>
 
    <my-element feeling="good"></my-element>
    <script type="module" src="./index.js"></script>
</body> 
</html> 

对于旧版本 0.5.2,下面的代码有效

   import {LitElement, html} from '@polymer/lit-element';

    class MyElement extends LitElement {
        
    static get properties() {
        return {
          feeling:{type:String}
        }
      }

    
      
      _render({feeling}) {
        return html  `  i feel ${feeling}!`;
      }       


    }

    customElements.define('my-element', MyElement);

这与 0.6.2 :

import {LitElement, html} from '@polymer/lit-element';

    class MyElement extends LitElement {

      static get properties() {
        return {
          feeling:{type:String}
        }
      }
      render() {            
        return 
          html`  now i feel  ${this.feeling} !`;
      }       
    }

    customElements.define('my-element', MyElement);

我发现在 0.6.2 版中将函数 _render() 更改为 render() 并且对于属性如果 this.proprerty 中的更改.....但在渲染中 this.feeling 是未定义的....

可以帮我?

4

1 回答 1

0

我不确定发生了什么,但我删除了...render() 中 html 标记之前的空格。

现在它工作正常。是 IDE 警告我该线路一定没有运行。

  render() {            
    return html`  now i feel  ${this.feeling} !`;
  }       
于 2018-12-04T08:06:45.967 回答