Redux表格社会保障(SSN)MAsking

时间:2018-06-12 18:42:32

标签: redux react-redux redux-form react-redux-form input-mask

我在redux-form工作,我有一个编辑社会安全号码字段。我希望能够将还原形式的SSN存储为'999-99-9999',但我需要UI输入才能显示 * - -9999。用户也应该能够编辑隐藏的数字。关于我的代码没有什么比这更复杂,但我会包含相关的代码片段:

const formatSSN = value => {
if (!value) { return value; }
const nums = value.toString().replace(/[^\d]/g, '');
const len = nums.length;
if (len < 4) {
    return nums;
} else if (4 <= len <= 5) {
    return `***-${nums.slice(3)}`;
} else if (len > 5) {
    return `***-**-${nums.slice(5)}`;
}

};

const parseSSN = value => {
const nums = value.replace(/[^\d]/g, '');
const len = nums.length;
if (len < 4) {
    return nums;
} else if (4 <= len <= 5) {
    return `${nums.slice(0, 3)}-${nums.slice(3)}`;
} else if (len > 5) {
    return `${nums.slice(0, 3)}-${nums.slice(3, 5)}-${nums.slice(5)}`;
}

};

我想知道我是否应该使用normalize函数来返回某种prevValue和value的混合?任何建议都将在这里受到赞赏,我对图书馆开放。

0 个答案:

没有答案