函数表示当我想返回匿名类型时返回boolean



所以我有这个设置检查功能

function areConfigSettingsProper() {
var configurationLimits = {
minItems: 10,
}
var configSettingsProper = _.every(storageConfigurationViewModel.configSettings.data(),
function(configSetting) {
if (configSetting.Enabled)
{
//Rounds limits
if (configSetting.items < configurationLimits.minItems)
{
return {
isValid: false,
message: "To few items in storage"
};
}
return {
isValid: true,
message: ""
};
});
return configSettingsProper;
}

但这是因为它仍然返回布尔值,因此当我尝试像这样使用时,我无法访问我的消息

const checkConfigSettings = areConfigSettingsProper();
if (checkConfigSettings.isValid) {
showSummary();
}
else {
showWarningWithConfirmation(checkConfigSettings.message);
}

但这根本没有显示任何消息,所以出于某种原因,我无法正确访问它。很明显我做错了什么。在良好的实践中,我应该如何处理?这一切都是在一个cshtml文件中完成的

configSettingsProper函数实际上是在调用every,而不是作为参数传递的函数。此函数的返回类型为boolean,因此是您的结果。

此外,您声明的函数可能无法按预期工作。every将检查此函数的返回是否为truthy。由于您在那里返回一个object(您的布尔值只是其属性之一(,因此可以预期configSettingsProper的结果始终是true

最新更新