Combineの@PublishedはwillSet的挙動をする

p0dee
Apr 17, 2021

久々にCombineを触っていて、 @Publishedを用いたプロパティの監視を試みていたところ、以下のようにwillSet的な挙動をしていた。

ドキュメントにも以下のような記載があったので、そのような仕様らしい。

When the property changes, publishing occurs in the property’s willSet block, meaning subscribers receive the new value before it’s actually set on the property.

とはいえ `newValue` は取得できているので、以下のように関数をメンバー数でなくパラメタをもとに実装しておけば、常に最新の状態に基づく処理を実行できる。

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

No responses yet

Write a response