我在angular js应用程序中使用libPhone库来验证电话号码是否有效。但是,我必须显示用户在输入的电话号码无效时必须提供的有效格式。
用户将提供国家/地区代码和电话号码。例如,如果用户需要提供美国号码,则向用户显示的格式为:xxx-xxx-xxxx
我试图通过使用一种解决方法来做到这一点,通过调用getPhoneFormat('mx')
来说明墨西哥号码
var getPhoneFormat = function(countryCode) {
var exampleNum = phoneUtil.getExampleNumberForType(countryCode, libphonenumber.PhoneNumberType.MOBILE);
var formattedNum = phoneUtil.format(exampleNum, libphonenumber.PhoneNumberFormat.RFC3966);
//formattedNum -> tel:+52-1-222-123-4567
//then i was thinking of removing the prefix by checking the position of the 1st '-'
var removeFromIndex = formattedNum.indexOf('-') + 1
var validFormat = formattedNum.substring(removeFromIndex);
//valid format is -> 1-222-123-4567
//finally replace numbers with x and return
}
库是否提供了一些方法来满足相同的要求?我看到formatByPattern
但不确定如何使用它。
答案 0 :(得分:0)
你试过这个较小的版本吗?它有一个解析和一个合成。
即。
parse('8 (800) 555 35 35', 'RU')
// { country: 'RU', phone: '8005553535' }
format('2133734253', 'US', 'International')
// '+1 213 373 4253'
在您的情况下,您可能想要使用
“国家”代替国际