web-dev-qa-db-ja.com

Polymer)の二重括弧[[]]と二重括弧{{}}

Polymer 1.0)の二重括弧([[...]])と二重括弧({{...}})の違いを説明する簡潔な方法は何ですか?

たとえば、 <iron-list> 要素のドキュメントでは、サンプルHTMLに次のように示されています。

<template is="dom-bind">
  <iron-ajax url="data.json" last-response="{{data}}" auto></iron-ajax>
  <iron-list items="[[data]]" as="item">
    <template>
      <div>
        Name: <span>[[item.name]]</span>
      </div>
    </template>
  </iron-list>
</template>

dataが1つの場所(last-response="{{data}}")で二重中括弧で囲まれているのに、別の場所で二重括弧(items="[[data]]")で囲まれているのはなぜですか?

15
George

バインドは、一方向([[]]を使用)または双方向({{}}を使用しますが、notifyも使用)のいずれかになります。

*ウェイバインディングを説明するには、トラフィックを考えます。一方向バインディングとは、モデルを更新すると、ビューが更新されることです。逆もまた真である場合、それは双方向バインディングです。

詳細については、 ドキュメント を参照してください。

16
user568109

角括弧のバインドを要素への入力と考え、中括弧を入力/出力または単に出力と考えると便利です。私が要素のセットを配線しているほとんどの場合、データの最終的な宛先が常にあり、それは情報を提示する要素上にあります。その最後のバインディングは中括弧を使用します。視覚的に、角括弧と中括弧が使用されている場所を観察することで、値を生成しているもの(中括弧)とそれを消費しているもの(角括弧)がわかります。

2
jptknta