gpt4 book ai didi

Javascript函数在调用之前执行

转载 作者:行者123 更新时间:2023-11-30 15:40:32 26 4
gpt4 key购买 nike

我有一个 javascript 函数提示它体内的调用在调用之前不是函数。有人可以帮我解释一下吗?

上下文:我正在使用 MeteorCollection2我想使用一个函数在我的模式的不同属性上重用。准确地说,我想执行以下操作:

function foo (autoVal, self){
if(something){
return autoVal;
}else{
return self.unset();
}
}

export const myCollection = new Mongo.Collection('myCollection');

const Schema = new SimpleSchema({
my_field:{
type:Boolean,
autoValue: foo(false,this),
}
});

myCollection.attachSchema(Schema);

当我保存它并运行 Meteor 时,它没有启动并且我收到以下错误消息:

TypeError: self.unset 不是函数

我觉得我遗漏了一些关于如何调用或执行 javascript 函数的信息,有人可以指出为什么会这样吗?

最佳答案

试试这个:

function foo (autoVal, self){
if(something){
return autoVal;
}else{
return self.unset();
}
}

export const myCollection = new Mongo.Collection('myCollection');

const Schema = new SimpleSchema({
my_field:{
type:Boolean,
autoValue() {
return foo(false, this);
}
}
});

myCollection.attachSchema(Schema);

关于Javascript函数在调用之前执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40903467/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com