値が変更されることをきっかけにSubscribeが実行されるはずなので、同じ値を代入した場合Subscribeは実行されないと思われるので確認してみます。
public ReactiveProperty<string> Title { get; private set; }
Title = new ReactiveProperty<string>("Title");
Title
.Skip(1) // 初回はスキップ
.Subscribe(x =>
{
Debug.Print($"{x}");
});
// 同じ値をセット
Title.Value = "Title"; // .Subscribe()は実行されない。
// 異なる値をセット
Title.Value = "タイトル"; // .Subscribe()は実行される。
実行すると”タイトル”を代入したSubscribe()のみ実行され、同じ値”Title”を代入した際にはSubscribe()は実行されませんでした。
コメント