【问题标题】:How to use Paper-Dialog in Polymer 1.0?如何在 Polymer 1.0 中使用 Paper-Dialog?
【发布时间】:2015-07-18 19:19:00
【问题描述】:

我认为this post 与 Polymer 0.5 相关,并且似乎不适用于 Polymer 1.0。对于像我这样的初学者,我看不到明确的实现;只是实际的功能代码,而不是“如何”。这是我的简单设置,但不起作用(假设我已导入所有元素):

<dom-element id="my-app">
 <template>
    <paper-button raised id="toggleDialog"></paper-button>
    <paper-dialog entry-animation="scale-up-animation"
      exit-animation="fade-out-animation" onclick="{{toggleDialog}}">
      <h2>Header</h2>
      <div>Dialog body</div>
    </paper-dialog> 
 </template>
 <script>
  Polymer({
   is: "my-app",
   properties: {
    type: String,
    observer: "" // not important for this example so it's empty.
   },
    // should I put the function here?
    toggleDialog: function() {
      this.$.dialog.toggle();
    }
  });
 </script>
</dom-element>

我希望我没有做错什么。

【问题讨论】:

  • 向我们提供更多详细信息:发生了哪些您不希望发生的事情?有什么错误现象吗?
  • @doldt 我已经添加了按钮。对不起。按下/单击/点击按钮时没有任何反应

标签: javascript polymer polymer-1.0


【解决方案1】:

替换:

this.$.dialog.toggle();

与:

this.$.toggleDialog.toggle();

因为:

现金符号$后面的字符串需要与id匹配。

最后:

id="toggleDialog" 属性从&lt;paper-button&gt; 标记移动到&lt;paper-dialog&gt; 标记。因为您想使用.toggle() 方法定位&lt;paper-dialog&gt; 元素。不是&lt;paper-button&gt; 本身。

【讨论】:

  • 现在你会相信哈哈哈。是时候喝杯咖啡了!今晚我的眼睛不适合我。感谢您发现这一点。
  • 您可能已经想通了,但您还需要将id="toggleDialog" 属性从&lt;paper-button&gt; 标记移动到&lt;paper-dialog&gt; 标记。查看更新后的编辑答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-24
  • 1970-01-01
相关资源
最近更新 更多