我想在我的Angular應用程序中混合Polymer Web組件,但我無法獲得雙向數據綁定這些框架之間的工作。我已經觀看了this video,並且已經嘗試了this question中提供的解決方案,但它仍然不適用於我。這是我的嘗試:框架組件(核心元素/紙張元素)的聚合物角度雙向數據綁定
Object
屬性值<game-card game="{{game}}" bind-polymer></game-card>
- 基於post-card.html
聚合物教程。game
是ID,標題等我創建的Web組件上的
gameChanged
功能,並在game
變量添加了一個新的屬性,像this.game.foo = 'bar';
的對象,但如果我不<pre><code>{{game | json}}</code></pre>
緊跟在組件後面,字符串化對象中沒有
"foo": "bar"
。即使publish: { game: {reflect: true} }
,這是行不通的。
框架組件
<core-input value="{{cool}}" bind-polymer></core-input> <paper-input value="{{cool}}" bind-polymer></paper-input>
如果我編輯元件的源代碼到
reflect
的value
屬性(上core-input.html
,紙輸入延伸它)它僅適用。我認爲這不是解決這個問題的好方法。
我錯過了什麼嗎?有沒有很好的資源可以尋找這種角聚合物集成?在Google上搜索帶來的關於the material的更多結果要比關於圖書館本身的結果多得多,其中大部分結果都是「Polymer for Dart」資源。
是的。很確定核心輸入的值屬性需要設置爲'reflect:true'才能工作(https://github.com/Polymer/core-input/blob/master/core-input.html#L161) 。否則,該屬性將不會更新,並且Angular的數據綁定系統將永遠不會看到更改。也許提出一個錯誤? https://github.com/Polymer/core-input/issues/new – ebidel
@edibel我有類似的問題,即使設置了「reflect:true」,它有時也不起作用。 – ipaul
@ebidel - 我會盡快提交一個錯誤,謝謝你的迴應。但是'Object'類型屬性呢?它是不是應該添加新的屬性呢,甚至更多地用'reflect:true'? 我遇到的另一個問題是,當我將'game'變量傳遞給屬性時,有時我的web組件會收到一個js對象,有時它會收到一個JSON字符串,迫使我將其設爲'JSON.parse'。 – danguilherme