Hi guys,
I am trying to use realtime API with stream builder. It works but the issue is on the first load it shows nothing. When I change value from the backend it builds the ui.
`/// Account Stream
Stream<RealtimeMessage> userStream() { final realtime = Realtime(client); RealtimeSubscription subscription = realtime.subscribe(['account']); return subscription.stream; }`
`/// Account Screen
class AccountScreen extends StatefulWidget { const AccountScreen({super.key});
static const routeName = '/account-screen';
@override State<AccountScreen> createState() => _AccountScreenState(); }
class _AccountScreenState extends State<AccountScreen> { final seafarerStream = AppwriteAuthService.instance.userStream(); @override void initState() { seafarerStream; super.initState(); }
@override Widget build(BuildContext context) {
return Scaffold(
appBar: const EzAppBar(
title: 'Account',
isPage: 'account',
),
body: EzStream(
stream: seafarerStream,
onData: (data) {
final doc = data.payload;
return EzText(
text: doc['name'].toString(),
fontWeight: FontWeight.w700,
);
},
));
} } `
How to load data on first load with stream builder....?
Kindly assist. Thank you
You will need to get the document or thing manually first time
As you would have done without realtime
As @D5 said, you need to fetch the user account details via account.get() to show initial data.
Realtime event is only fired when a data on the observing channel changes. It doesn't do a fetch on connect.
Thank you @darShan & @D5 Will try that. Was expecting to work like firebase
[SOLVED] Realtime API and stream builder
Recommended threads
- android platform invaild origina
It happened today suddenly. Our app says invalid origin. And appwrite cloud says every time we tried to add the app to it: "param platformId" is not optional.
- Team invite - 500 error - no email
When executing ```dart await _repository.teams.createMembership( teamId: event.listId, roles: ['member'], email: event.email, url: 'xxxx', ); ``` I se...
- Help with nameservers
I just added our domain, and as per instruction in the page following, it says, "Add the following nameservers on your DNS provider. ..." I want to keep my cu...