下面了解一下怎么得到表单字段里面的数据 ..
先给我们的表单添加一个 GlobalKey, 把这个 Key 交给表单,然后我们可以使用这个 Key 引用这个表单 .. final .. registerFormKey ,它是一个 GlobalKey .. 类型是 FormState ...
再找到 Form .. 给它一个 key 属性,对应的值就上面我们创建的这个 registerFormKey ..
在 TextFormField 里面 .. 可以添加一个 onSaved .. 因为 TextFormField 继承了 FormField,所以它里面会有这个 onSaved .. 保存表单数据的时候会执行这个回调 ..
在类里面可以再添加两个 Stirng 类型的属性 .. username 还有 password ,用它表示在表单里面输入的用户名还有密码 ..
继续再编辑这个 onSaved .. 这个回调支持一个 value 属性,表示的就是表单字段里的数据 .. 里面可以设置一下 username 的值,让它等于 value .. 也就是在保存表单数据的时候,就会把 username 的值设置成在这个表单字段里面输入的值 ..
在下面这个 password 里面 .. 也添加一个 onSaved .. 一个 value 参数,保存的时候,让 password 的值等于这个 value ..
执行保存表单数据的这个动作可以交给 Register 这个按钮 .. 找到这个按钮 .. 它的 onPressed 的值换成一个方法 .. 名字是 submitRegisterForm ..
在类里面再打开这个定义一下这个方法 .. void 表示方法返回空值 .. 方法的名字是 submitRegisterForm ..
方法里面,我们可以使用 registerFormKey 里的 currentState ,用一下 save 这个方法 .. 意思就是保存一下在 RegisterForm 这个表单里面填写的数据 ..
下面可以在控制台上输出 username 还有 password 这两个属性的值 .. 用一下 debugPrint ... 输出 username .. 对应的值是 username ... 再输出一个 password ... 对应的值是 password ...
shift + command + Y 打开编辑器的调试控制台 ..
在这个 RegisterForm 里面 .. 输入一个 username ... 再输入一个密码 .. 然后按一下 Register 按钮 .. 这样就会执行保存表单数据 .. 然后把在表单里输入的 username 还有 password 的值输出到调试控制台上 ..