考慮定製的聚合物元件聚合物數據綁定和Immutable.js一起
<app-header bar-foo="[[abc.def.ghi]]" app-title="[[appTitle]]"></app-header>
這裏的以下使用我結合兩個變量來定製元素app-header
。現在,當我想更新的值,您可能希望這樣做如下(在app-header
父!):
this.abc.def.ghi = 10;
this.appTitle = 'New title';
然而,這僅更新appTitle
不abc.def.ghi
。爲了更新這個值,以及你需要做的具體步驟如下:
this.abc = {def: {ghi: 10}};
如果有人知道這是爲什麼,請讓我知道!我想用Immutable
! 然而,這引起一些問題,如何將數據綁定到定製元素
下面是一個例子片段:
<dom-module id="my-app">
<template>
<app-header hits="[[state.get('page').get('hits')]]"></app-header>
</template>
<script>
(function() {
class MyApp {
beforeRegister() {
this.is = 'my-app';
this.properties = {
state: {
type: Object,
notify: true,
value: Immutable.Map({
page: Immutable.Map({hits: 10})
})
}
};
}
}
Polymer(MyApp);
})();
</script>
</dom-module>
所以結合數據時,一個元件發生問題:
這樣的事情是甚至可能的,還是我在做其他事情完全錯誤?