状态对象外部的颤振状态

时间:2019-03-24 02:00:40

标签: flutter

我将原始状态保留在State中。但是对于对象,可以使用以下功能:

class _Like extends StatefulWidget {
    final Post _post; <-- mutable object is here

    _Like(this._post);

    @override
    State<StatefulWidget> createState() => _LikeState();
}

class _LikeState extends State<_Like> {
    ...
    _like() {
        setState(() {
            widget._post.liked = !widget._post.liked; <-- mutated here
        });
    }
    ...
}

使用此方法的原因是什么? (与在State内部移动状态相反,最好在原始bool中移动状态)

1 个答案:

答案 0 :(得分:1)

可能是因为initState()State类中,您的StatefulWidget无法调用。因此,您的整个状态应在您的State类中,以允许这样做。