typeerror无法读取未定义的属性“ split”

时间:2018-07-19 06:35:23

标签: javascript

在这个非常基本的代码上,我不断收到此错误。

// utils/validateEmails.js
const re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

export default (emails) => {
    const invalidEmails = emails.split(',')
        .map(email => email.trim())
        .filter(email => re.test(email) === false);

    if(invalidEmails.length) {
        return `These emails are invalid: ${invalidEmails}`;
    }

    return;
};

使用方式

import validateEmails from '../../utils/validateEmails'

// snip    

errors.emails = validateEmails(values.emails)

1 个答案:

答案 0 :(得分:0)

您必须为变量emails分配一个值。.

emails = 'e@a.com,c@r.com,e@e.com';

split是对象string的属性。.如果对象未定义,则对象属性不可用。