0
私はそれの親の配列を更新するcomponetを持っています。具体的には、加算が行われ、はソートされた全く新しい配列を作成し、元の配列を上書きします。ここでは、デバッガでRactiveを使用してアレイを上書きする方法はありますか?
var sortedUpdatedDomainNames = updatedProposedDomainNames.sort(sorts.domainName)
// even though we sort them, after setting the value, getting it returns the unsorted items
debugger;
型付け:作品
sortedUpdatedDomainNames
(4) ["example.com", "www.example.com", "swag.com", "www.swag.com"]
OK。配列項目がソートされている
await parentComponent.set('order.proposedDomainNames', sortedUpdatedDomainNames)
はここで最初の問題です(親ドメインの直後に、WWWを置くsorts.domainName
使用):DOMは更新されませんがporoperly、いくつかの項目は、彼らがしているにもかかわらず、DOMで重複していますデータに重複しません。
しかし、parentComponent.update
修正これらの重複を実行:
// Work around odd ractive bug where DOM doesn't update properly
// Trigger an update manually using .update()
// TODO: find proper fix!
await parentComponent.update('order.proposedDomainNames');
は、彼女は第二の問題です:値は現在ソートされていないされている(だけでなく、彼らはされていない、今アルファベット順にソートしている私が欲しいもの)。
parentComponent.get('order.proposedDomainNames');
(4) ["example.com", "swag.com", "www.example.com", "www.swag.com"]
Ractiveを使用してアレイを上書きするにはどうすればよいですか? 回答を提出しないでください:ractive.splice()
など - 私はデータが挿入されるインデックスを事前に知らないので、配列全体を並べ替えて更新したいだけです。
配列は親からマッピングされているのですか、それとも別の方法で配列を渡していますか? –
'set( 'path.to.array'、ref、{shuffle:true})'もチェックしてください。スプライシングに似ていますが、配列全体に似ています。これを使用して、Ractiveの範囲外で配列をソートし、非破壊的に更新することができます。 –
@ChrisReeves私は、「マッピング元」が何を意味するのかわからない。配列は親にありますが、子コンポーネントによって設定されます。それ以外の場合は、質問に言い換えてくださいできますか?ありがとう。 – mikemaccana