Flutter.. 两个点语法含义
在Flutter编程中,会经常用到”..”的语法糖,如下
state.clone() ..splashImg = action.img ..famousSentence = action.famousSentence;
其实以上代码等同于
state.clone() state.splashImg = action.img state.famousSentence = action.famousSentence;
简单的可以看成链式调用, 但和Java等的链式调用不同的是:
Java中的链式调用有个规律, "谁调用,返回谁" ,比如
public Alert setTitle(String str){
Alert.title = str;
return Alert;
}
在这里边Alert是调用主体, 最后返回的还是Alert;
而在Dart中 ".." 不用在方法中返回调用主体; 尽管源码的实现方式也是通过set进去的,但我们看到的就是Dart给我们用的语法糖, 因为Dart本身就把成员变量的getter setter 方法改为隐式的了