Typo3 验证器 returns 在 null 上调用成员函数 addError()

Typo3 validator returns Call to a member function addError() on null

我很流畅 form.On 编辑完成 ajax 调用被传递给控制器 我创建了一个 EmailAddressValidator() 的实例 我的代码如下

$validate =  \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Validation\Validator\EmailAddressValidator');
$result = $validate->isValid('xyz@gmail.com');

它 returns 如果电子邮件正确就没什么 format.But 它 returns

Call to a member function addError()

如果格式不正确。

(更新)

问题是你如何调用验证器。您需要调用方法 validate,而不是 isValid.

所以这应该有效:

$validate =  \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Validation\Validator\EmailAddressValidator');
$result = $validate->validate('xyz@gmail.com');

$resultTYPO3\CMS\Extbase\Error\Result的一个实例,您可以使用hasErrors方法来检查邮件是否有效。