flutter 父组件调用子组件方法

当子组件是有状态组件

声明GlobalKey

如 声明

GlobalKey formKey = GlobalKey<FormState>();
Form(

key: formKey,

autovalidateMode: AutovalidateMode.always,

child: Column(

children: <Widget>[

TextFormField(

autofocus: true,

initialValue: "a",

validator: (v) {

return v!.trim().length > 0 ? null : "请输入内容";

},

),

],

),

),

FormState 是 有状态组件Form 的 State实现 。FormState不能是下划线的 不能设置为私有属性

调用 Form 组件内定义方法

(formKey.currentState as FormState).validate()

当子组件是有状态组件

如无状态组件A

import 'package:flutter/material.dart';

class A extends StatelessWidget {

const A({super.key});

fun() {

print("调用的方法")

}

@override

Widget build(BuildContext context) {

return Container();

}

}

声明

GlobalKey aKey = GlobalKey<A>();

使用

(aKey.currentState as A).fun()

相关推荐
吴声子夜歌10 小时前
Vue.js——自定义指令
前端·vue.js·flutter
liulian091616 小时前
Flutter 三方库 flutter_local_auth 的鸿蒙化适配指南
flutter·华为·学习方法·harmonyos
qwfy17 小时前
瑞幸 UI 上 pub.dev 了 —— 22 个 Flutter 组件,与微信小程序版双端对齐
flutter·开源
liulian091619 小时前
【Flutter for OpenHarmony】原生卡片 Widget 集成实战:从零构建待办清单桌面组件
flutter·华为·学习方法·harmonyos
2601_9495936520 小时前
Flutter OpenHarmony 三方库 video_player 视频播放器适配详解
flutter·音视频
liulian091621 小时前
Flutter 三方库 connectivity_plus 的鸿蒙化适配与网络状态管理实战
网络·flutter·华为·学习方法·harmonyos
MonkeyKing21 小时前
InheritedWidget 原理与性能
flutter
liulian09161 天前
【Flutter For OpenHarmony】Flutter 三方库 flutter_secure_storage 的鸿蒙化适配指南
flutter·华为·学习方法·harmonyos
liulian09161 天前
【Flutter For OpenHarmony】Flutter 三方库 flutter_local_notifications 的鸿蒙化适配指南
flutter·华为·学习方法·harmonyos
IntMainJhy1 天前
【Flutter 三方库 Provider 】flutter for open harmony的鸿蒙化适配与实战指南✨
flutter·华为·harmonyos