Fllutter MVVM堆叠 我是Flutter和MVVM的新手。我不明白,在计时器结束后,如何在视图中触发方法。我知道我可以在小部件tre中的ViewModel中通知LifyListeners并使用我的属性...

问题描述 投票:0回答:3

视图模型:

import 'dart:async'; import 'package:stacked/stacked.dart'; class SplashPageViewModel extends BaseViewModel { bool _hasFinishedTimer = false; bool get hasFinshedTimer => _hasFinishedTimer; void startTimer() { Timer _timer; _timer = Timer.periodic(Duration(seconds: 2), (timer) { _hasFinishedTimer = true; _timer.cancel(); //view.methodToTrigger() notifyListeners(); }); } }

	

关注MVVM原理,视图显示方式外,您没有逻辑。我想您应该将方法移至ViewModel。

但是,如果需要此方法运行一些视图逻辑,则最好提供更多信息。

flutter dart mvvm stacked
3个回答
1
投票
StateFullWidget

时,您不需要使用

ViewModel

。 您正在错误地使用

ViewModel

0
投票
class ProfileScreen extends StatelessWidget{ @override Widget build(BuildContext context) { return ViewModelBuilder< SplashPageViewModel >.reactive( builder: (context, model, child) => Scaffold(), viewModelBuilder: () => SplashPageViewModel()); } }


学习堆叠体系结构的最佳方法是阅读由Creater撰写的博客
dane

这里是让您前进的两篇文章,第2部分,但是这些文章已有2年的历史,因此自那时以来,许多事情发生了变化,请检查插件的
page

0
投票

我们在《媒体》上写了一篇有关如何在颤音中使用和实施MVVM的综合文章。这是链接:https://medium.com/p/95be868b18b9

在ViewModel中添加了您的方法,您可以从视图调用该方法。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.