Dart 我可以将setter(不是值)作为参数传递给函数而不进行反射吗?

Dart 我可以将setter(不是值)作为参数传递给函数而不进行反射吗?,dart,Dart,我想将类字段的setter作为参数传递给函数,以便该函数可以执行赋值 有没有不使用反射的方法?您不能直接通过setter 为了避免反射,可以将setter包装到函数中: A类{ 字符串_attr=; 设置属性(字符串v)=>\u属性=v; } main(){ 最终a=新a(); //创建一个包装函数来设置attr 最终设定者=(v)=>a.attr=v; 呼叫设置器(setter); 印刷品(a.)属性; } callSetter(setterFunction(value)){ setterFu

我想将类字段的setter作为参数传递给函数,以便该函数可以执行赋值


有没有不使用反射的方法?

您不能直接通过setter

为了避免反射,可以将setter包装到函数中:

A类{
字符串_attr=;
设置属性(字符串v)=>\u属性=v;
}
main(){
最终a=新a();
//创建一个包装函数来设置attr
最终设定者=(v)=>a.attr=v;
呼叫设置器(setter);
印刷品(a.)属性;
}
callSetter(setterFunction(value)){
setterFunction(“值”);
}
这是并且可能很快就会实现的,它允许关闭getter和setter,如:

var setter = a#attr;
// and can be invoked like
setter(value)

您也可以这样做:

调用函数:

function ( (parameter) => val = parameter );
功能体应如下所示:

void function (setter) {
    setter = newValue;
}

希望有帮助,如果不起作用,请告诉我。

谢谢您的确认。