[英]why is builder in flutter breaking here
我今天已經修復了我的第一組錯誤,但是現在在這一行代碼中斷了,我無法弄清楚這一點
這是問題中的錯誤代碼行
builder: (BuildContext context) {... }
這是錯誤:
編譯器消息:lib/main.dart:11:5:錯誤:沒有名為“builder”的命名參數。 builder: (BuildContext context) { ^^^^^^^ ../../Downloads/flutter_windows_v1.12.13+hotfix.8-stable/src/flutter/.pub-cache/hosted/pub.dartlang.org/provider -4.0.4/lib/src/change_notifier_provider.dart:107:3: 上下文:找到這個候選,但參數不匹配。 ChangeNotifierProvider({ ^^^^^^^^^^^^^^^^^^^^^^ 目標 kernel_snapshot 失敗:異常:快照創建過程中出錯:空構建失敗。
FAILURE:構建失敗,出現異常。
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'home_page.dart';
import 'auth.dart';
import 'login_page.dart';
void main() => runApp(
ChangeNotifierProvider<AuthService>(
child: MyApp(),
builder: (BuildContext context) {
return AuthService();
},
),
);
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(primarySwatch: Colors.blue),
home: FutureBuilder<FirebaseUser>(
future: Provider.of<AuthService>(context).getUser(),
builder: (context, AsyncSnapshot<FirebaseUser> snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
// log error to console
if (snapshot.error != null) {
print("error");
return Text(snapshot.error.toString());
}
// redirect to the proper page
return snapshot.hasData ? HomePage(snapshot.data) : LoginPage();
} else {
// show loading indicator
return LoadingCircle();
}
},
),
);
}
}
class LoadingCircle extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Center(
child: Container(
child: CircularProgressIndicator(),
alignment: Alignment(0.0, 0.0),
),
);
}
ChangeNotifierProvider
沒有builder
屬性。 您想使用create
屬性:
ChangeNotifierProvider<AuthService>(
create: (context) => AuthService(),
child: MyApp(),
},
( 文檔)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.