exports.main = async (event, context) => {
try {
if(typeof event.data == 'string'){
event.data = eval('('+event.data+')');
}
return await db.collection(event.collection).doc(event.doc)
.update({
data: {
...event.data
}
})
} catch (e) {
console.error(e)
}
}
我用传进来的字符串换成js代码,但是这个eval方法已经不能用了
有现成的js解释器 eval5: https://github.com/bplok20010/eval5
import { evaluate } from 'eval5'; var data = evaluate(`( ${event.data} )`)
自己用JS写一个JS解析器
如果是JSON数据就用 JSON.parse 方法,如有包含函数肯定是不能执行了