我正在使用intl_phone_field
软件包根据国家代码验证电话号码。IntlPhoneField
会自动检查无效电话号码,并分别提示一条消息。
它支持onChange
,onSubmit
和onSaved
功能,但不支持onValid
功能。
我想启用/禁用提交按钮,基于包的验证功能,因为它已经支持许多国家代码和不同的电话号码长度.
Widget build(BuildContext context) {
return IntlPhoneField(
autofocus: true,
decoration: const InputDecoration(
labelText: 'Phone Number',
border: OutlineInputBorder(),
counterText: '',
),
initialCountryCode: 'US',
// countries: const ['US'],
);
}
我该怎么做?
3条答案
按热度按时间irtuqstp1#
解决了!
我通过导出
Country
对象检测了使用intl_phone_field
包的验证,该对象包含国家代码电话号码的minLength
和maxLength
。使用这些参数,我验证了
onChange
函数中的电话号码,以及验证电话号码时的函数。我在GitHub项目中打开了一个pull request。
vohkndzv2#
您可以使用状态变量并使用
validator
数据来检查number是否有效您还可以使用
TextEditingController
与监听器和检查数据和启用按钮状态。确保使用setState。tjrkku2a3#
您可以创建一个布尔变量,然后在
IntlPhoneField
中使用验证器:现在,在导航之前,只需检查布尔变量是否为真。