私が間違っている場合は私を訂正してください。しかし、現時点ではreplaceを使用することはできません。代わりにobservable配列全体を置き換え、代わりにmapを使用する必要があります。 MobX - 観測可能な配列のアイテムを置き換えますか?
は、私はこのような観察可能な配列があります。サーバー上で@observable questionsList = [];
は、それが明確なid
フィールドを持つ2つのオブジェクト、各移入されるコールを、それは次のようになります:
@observable questionsList = [
{id: 1,
question: "Is the earth flats?",
answer: "Some long answer here..."
{id: 2,
question: "Does the moon have life?"}
answer: "Some long answer here..."}
];
IDが1
の質問には、修正が必要なタイプミスがあります。Is the earth flat?
次のように指定します。
const newQuestionId = 1;
const newQuestion = "Is the earth flat?"
const oldQuestion = this.questionsList.find(question => question.id === newQuestionId);
oldQuestion.replace(newQuestion) // Would be nice if this syntax worked
は今、私は正しいoldQuestion
を持っていますが、どのように私は、新しい質問とquestionList
配列にそれを置き換えることができますか?私は交換しようとしましたが、動作しませんでした。マップは唯一の方法ですか?もしそうなら、私は観測可能な配列でしか作業していないので、マップをどのように動作させるのかは分かりません。
MobXを使用してこれを行うにはどうすればよいですか?あなただけの文字列を上書きすることができるように
は何かが足りないかもしれませんが、なぜだけでなく: 'questionsList.find(質問=> question.id === ID).question =「です地球のフラット "? – mweststrate