【发布时间】:2016-06-30 14:18:33
【问题描述】:
我这样调用函数:
import {required, maxLength} from 'utils/validation';
import sitesForm from './sites.json';
import productForm from './product.json';
var validateSite = {};
for(var group in sitesForm ) {
var groupObj = sitesForm[group];
for(var el in groupObj ) {
console.log(eval('required'))
validateSite[groupObj[el].name] = groupObj[el].rules.map(eval)
}
}
//utils/validation.js
export function required(value) {
if (isEmpty(value)) {
return 'Champs requis';
}
}
我收到一条错误消息,说 required 没有定义,在我的 json 中,我得到了这个规则数组: “规则”:[“必需”]
但是代码中的 console.log(required) 显示:[Function: required]
你知道为什么我不能将 eval 与 required 一起使用吗?
【问题讨论】:
-
不要使用
eval。你想做什么? -
好吧,
eval将返回内部代码的结果。eval('required')与required基本相同,required是一个函数。你应该做的是eval('required()'),但真的你应该跳过eval! -required()。为什么需要它?
标签: javascript express ecmascript-6 eval ecmascript-2016