2015-08-25 21 views
11

Jaki jest zwięzły sposób wyjaśnienia różnicy między nawiasami podwójnymi ([[...]]) a podwójnymi nawiasami ({{...}}) w Polymer 1.0?Podwójne klamry [[]] kontra Podwójne klamry {{}} w polimerze

Na przykład, w dokumentacji elementu <iron-list> HTML próbka wykazuje:

<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> 

Dlaczego data ograniczone podwójnymi szelkami w jednym miejscu (last-response="{{data}}") ale ograniczona podwójnych nawiasach (items="[[data]]") w innym miejscu ?

Odpowiedz

13

Oprawa może być jednokierunkowa (przy użyciu [[]]) lub dwukierunkowa (za pomocą {{}}, ale także użyj powiadomienia).

Wyjaśnić * -tędy wiążący ruch myślowy. Wiązanie jednokierunkowe następuje po zaktualizowaniu modelu, widok jest aktualizowany. Kiedy odwrotność jest również prawdziwa, jest to wiązanie dwukierunkowe.

Aby uzyskać więcej informacji, patrz documentation.

+1

To mylące, że w dokumentacji Polymer podwójne nawiasy używane są nawet w przykładach, gdzie zdecydowanie nie ma dwukierunkowego wiązania - zobacz ten przykład https://www.polymer-project.org/1.0/docs/devguide/data-binding#binding -to-text-content - wydaje się, że podwójne nawiasy klamrowe - domyślna preferowana opcja? –

+0

@ ElenaSharovar Tak, to nie ma sensu w tych miejscach. Ale myślę, że jest to z przyzwyczajenia, a nie z jakiejkolwiek konwencji. Wcześniej używałam też '[[]]' w wielu miejscach, a następnie musiałem zmienić na '{{}}, gdy potrzebowałem więcej funkcji. Teraz używam tego ostatniego zamiast zmieniać go za każdym razem. – user568109

1

Uważam, że przydatne jest myślenie o powiązaniu z nawiasami kwadratowymi jako dane wejściowe do elementu i nawiasu klamrowego jako wejścia/wyjścia lub po prostu wyjście. W większości przypadków, gdy podłączam zestaw elementów, niezmiennie jest to ostateczne miejsce przeznaczenia danych i to na elemencie, który prezentuje informacje. To ostatnie powiązanie używa nawiasów kwadratowych. Wizualnie, obserwując, gdzie są używane klamry kwadratowe i nawiasy klamrowe, rozumiem, co produkuje wartość (kręcone usztywnione) i co je konsumuje (kwadratowe usztywnione).