我想在顫振中使用變異 graphql。但我有這個按摩,我無法加載我的代碼。
這是我的代碼:
import 'package:flutter/material.dart';
import 'package:graphql_flutter/graphql_flutter.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
final HttpLink httpLink = HttpLink(
'https://test.podkadeh.ir/graphql/',
);
final ValueNotifier<GraphQLClient> client= ValueNotifier<GraphQLClient>(
GraphQLClient(
link: httpLink,
cache: GraphQLCache(),
)
);
return GraphQLProvider(
child: HomePage(),
client: client,
);
}
}
class HomePage extends StatelessWidget {
TextEditingController nameController = TextEditingController();
TextEditingController emailController = TextEditingController();
TextEditingController passwordController = TextEditingController();
String createUser = '''
mutation createUser{
createUser(userInput: {Email: "$String", Password: "$String"}){
Name,
Email
}
}
''';
@override
Widget build(BuildContext context) {
return MaterialApp(
home: SingleChildScrollView(
child: Column(
children: [
Mutation(
options: MutationOptions(
document: gql(createUser),
),
builder:(
RunMutation insert,
QueryResult? result,
){
return
Column(
children: [
TextField(
decoration: InputDecoration(hintText: "Name"),
controller: nameController,
),
TextField(
decoration: InputDecoration(hintText: "Email"),
controller: emailController,
),
TextField(
decoration: InputDecoration(hintText: "Password"),
controller: passwordController,
),
RaisedButton(
child: Text("Submit"),
onPressed:(){
insert(<String, dynamic>{
"Email": emailController.text,
"Name" : nameController.text,
// "Password" : passwordController.text,
});
}),
Text("Result : \n ${result!.data?.toString()}",),
],
);
},
),
],
),
),
);
}
}
這是我得到的一個錯誤:
`找不到材料小部件。
TextField 小部件需要一個 Material 小部件祖先。在材料設計中,大多數小部件在概念上都是“列印”在一張材料上的。在 Flutter 的材料庫中,該材料由 Material 小部件表示。例如,它是呈現墨水飛濺的材料小部件。因此,許多材質庫小部件要求它們上方的樹中有一個材質小部件。
要引入 Material 小部件,您可以直接包含一個小部件,也可以使用包含 Material 本身的小部件,例如 Card、Dialog、Drawer 或 Scaffold。
找不到 Material 祖先的特定小部件是: TextField 控制器:TextEditingController#c0f68(TextEditingValue(text: ┤├, selection: TextSelection(baseOffset: -1, extentOffset: -1,affinity: TextAffinity.downstream, isDirectional: false) , 組成:TextRange(start: -1, end: -1))) 裝飾:InputDecoration(hintText: "Name") 臟依賴:[UnmanagedRestorationScope, MediaQuery] state:_TextFieldState#49d5d 這個widget 的祖先是::列方向: 垂直 mainAxisAlignment: start crossAxisAlignment: center renderObject: RenderFlex#ce4db NEEDS-LAYOUT NEEDS-PAINT : StreamBuilder<QueryResult?> state: _StreamBuilderBaseState<QueryResult?, AsyncSnapshot<QueryResult?>>#26355 : Mutation 依賴: [_InheritedGraphQLProvider] state: Mutation #0e229:列方向:垂直 mainAxisAlignment: start crossAxisAlignment: center renderObject: RenderFlex#1a73f NEEDS-LAYOUT NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE : SingleChildScrollView 依賴項: [PrimaryScrollController] : MaterialApp state: _MaterialAppState#7f306 : HomePage : _InherialAppState#7f306 :MyApp ...導致錯誤的相關小部件是:TextField TextField:file:///G:/سورس ها ی فلاتر/mutation_gql/lib/main.dart:62:25`_GraphQLProviderState#bab20 : MyApp ...導致錯誤的相關小部件是:TextField TextField:file:///G:/سورس ه% D8
標籤:扑 镖 图形 小部件 graphql-突变 上一篇:浮動圖片在其容器外顫動
