gpt4 book ai didi

javascript - 制表符中的更改器(mutator)不适用于相同的编辑功能

转载 作者:行者123 更新时间:2023-12-03 14:52:29 24 4
gpt4 key购买 nike

我有一个场景,我在下面定义突变器,当我编辑单元格时,它在使用常见突变器的地方不起作用?我想这是一个错误还是有其他方法可以做到这一点?

 var diffMutator_FEcontacted = function (value, data, type, params, component) {
var start = moment(data.incident_start, 'DD/MM/YYYY HH:mm')
var end = moment(data.First_expert_contacted_by_SE, 'DD/MM/YYYY HH:mm') //common feild
var new_value = end.diff(start, 'minutes');
if (type == "edit") {
console.log('edit');
component.getRow().getCell("time_to_contact_first_exp_calc").setValue(new_value);
return value;
} else {
return new_value
}
}

var diffMutator_REcontacted = function (value, data, type, params, component) {
var start = moment(data.incident_start, 'DD/MM/YYYY HH:mm')
var end = moment(data.Right_expert_found_at, 'DD/MM/YYYY HH:mm') //common feild
var new_value = end.diff(start, 'minutes');
if (type == "edit") {
console.log('edit');
component.getRow().getCell("Time_to_find_right_exp_calc").setValue(new_value);
return value;
} else {
return new_value
}
}

var diffMutator_FEREdiff = function (value, data, type, params, component) {
var start = moment(data.First_expert_contacted_by_SE, 'DD/MM/YYYY HH:mm') //common feild in another fucntion
var end = moment(data.Right_expert_found_at, 'DD/MM/YYYY HH:mm') //common feild in another function
var new_value = end.diff(start, 'minutes');
if (type == "edit") {
console.log('edit');
component.getRow().getCell("time_diff_FE_RE").setValue(new_value);
return value;
} else {
return new_value
}
}
相反,我会将此解释为 mutator 不在公共(public)领域工作。
这是 fiddle用上述用例解释:

最佳答案

发生这种情况是因为仅在更新其字段时才调用 mutator 函数,每个单独的函数都不知道它是否依赖于表中的任何其他字段。
我建议在 cellEdited已编辑列的回调,您包括 row.update触发依赖列的更新。
例如,“TimeDiff”列依赖于“TimeStart”列,因此在 TimeStart 列的定义中,您应该包括以下内容:

{title: "Start Time", field: "TimeStart", cellEdited:function(cell){
cell.getRow().update({TimeDiff:true});
}},
然后,这将在编辑 TimeStart 时触发相关 TimeDiff 突变体的突变

关于javascript - 制表符中的更改器(mutator)不适用于相同的编辑功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65050111/

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