sync static method

Widget sync({
  1. dynamic initialData,
  2. required String uid,
  3. required Widget builder(
    1. User data
    ),
  4. Widget? onLoading,
})

사용자의 특정 필드 하나만 listen 한다.

로그인한 사용자 뿐만 아니라, 다른 사용자의 필드를 listen 할 때에도 사용한다.

Implementation

static Widget sync({
  dynamic initialData,
  required String uid,
  required Widget Function(User data) builder,
  Widget? onLoading,
}) {
  // final path = 'users/$uid';

  return Value(
    initialData: initialData,
    // path: path,
    ref: FirebaseDatabase.instance.ref("${User.node}/$uid"),
    // warning: data may be null if the uid does not exist in database.
    builder: (data) => builder(User.fromJson(data ?? {}, uid: uid)),
    onLoading: onLoading,
  );
}