Aks*_*hay 4 validation typescript angular
我正在尝试使用接受字符串和数组的Is-Valid-Glob来验证 glob 表达式。从文本字段接收需要验证的值。问题是,如果我们传递一个无效的 glob 表达式,它会产生错误的结果,因为每个输入都是作为字符串接收的。例如:- 如果用户输入 [](无效的 glob),它会作为字符串 '[]' 分配给模型变量,并且验证是在 '[]' 而不是 [] 值上完成的。有没有办法将值从字符串变量转换为对象变量(只有值不应该获取类型)并进行验证?
PS:我正在使用 Angular 2。
您可以使用 JSON.parse 将字符串转换为对象:
var x = require('is-valid-glob');
var y = '[]';//'foo/*.js' any user provided string
// this will check if the user has provided an array object if so it
//will do a json.parse to remove the '' and then verify the string for a glob.
x(y[1] !== '['?y:JSON.parse(y));
Run Code Online (Sandbox Code Playgroud)
尝试使用 eval 作为示例,它用于将字符串转换为等效对象,
var a="[]";
console.log(a);// this will print "[]" as a string.
console.log(eval(a));// this will print an array object. With 0 length array object.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18510 次 |
| 最近记录: |