Валидатор Angular 4 работает по-разному при развертывании на сервере
У меня есть валидатор, который отлично работает при локальном запуске:
`функция экспорта currencyAmountValidator (control: AbstractControl) {
var прошло = / ^ (\ £)? ([1-9] {1} [0-9] {0,2}) (\, \ d {3})(. \ d {2})? $| ^(\$)? ([1-9] {1} [0-9] {0,2}) (\ d {3})(. \ D {2})?$|^(0)?(.\d{2}) $|? ^(\$0) (\ d {2}) $|?.?.? ^(\$) (\ d {2}) $/gm.test(control.value);
возвращение прошло? нуль: {недействительно: истина}; } `
Это позволяет записи как: 100, £100, £123,45, £1300
Однако при развертывании на сервере он не допускает символ £ в начале, но допускает символ $. Почему это работает по-разному при запуске локально и на сервере?
1 ответ
Моим решением было использовать xA3 вместо £ в регулярном выражении, поэтому это регулярное выражение делает то, что я хочу, даже после развертывания на сервере:
/ ^ (\ xA3)? ([1-9] {1} [0-9] {0,2}) (\, \ d {3})(. \ d {2})? $| ^ (\ xA3)? ([1-9] {1} [0-9] {0,2}) (\ d {3})(. \ d {2})? $| ^ (0)? (. \ d {2}) $|? ^ (\ xA30) (\ d {2}) $|?.?.? ^ (\ XA3) (\ d {2}) $/ г
Webpack (компиляция Angular в минимизированные файлы), должно быть, возился с