【问题标题】:Delete and Rerender Widget immediately立即删除并重新渲染小部件
【发布时间】:2018-10-04 03:29:51
【问题描述】:

期望的结果:我有一个显示待办事项列表的列表视图。我喜欢实现一个删除功能,当用户单击“删除”图标按钮时将触发该功能。我也喜欢自动重新渲染列表视图,从而删除已删除的待办事项。

现在:我可以删除待办事项,但小部件不会重新渲染以显示更新的列表视图(这将删除已删除的待办事项)

实现此自动重新渲染以显示更新的列表视图的最佳做法是什么?我不想导航到新页面。

谢谢

下面是我的代码

链接https://github.com/myhendry/flutter我的完整代码

taskCard.dart

      ScopedModelDescendant(
        builder: (BuildContext context, Widget child, MainModel model) {
          return IconButton(
              icon: Icon(Icons.delete),
              color: Theme.of(context).accentColor,
              onPressed: () {
                model.deleteTask(task.id);
                //  Navigator.pushNamed(context, '/updateTask/${task.id}');
              });
        },
      ),

scoped-models/connected_products.dart

  Future<bool> deleteTask(String selectedTaskId) async {
    _isLoading = true;
    notifyListeners();
    try {
      await http.delete(
          'https://manager1-ae03e.firebaseio.com/tasks/$selectedTaskId.json?auth=${_authenticatedUser.token}');
      _isLoading = false;
      notifyListeners();
      return true;
    } catch (e) {
      _isLoading = false;
      notifyListeners();
      return false;
    }
  }

【问题讨论】:

    标签: flutter


    【解决方案1】:

    我设法解决了这个问题。我只是在任务被删除后调用 fetchTasks() 。我不确定这是否是好的做法。如果有人有更好的方法,请随时与我分享。谢谢

    我的代码如下。希望对遇到同样问题的人有所帮助

          ScopedModelDescendant(
            builder: (BuildContext context, Widget child, MainModel model) {
              return IconButton(
                  icon: Icon(Icons.delete),
                  color: Theme.of(context).accentColor,
                  onPressed: () {
                    model.deleteTask(task.id);
                    model.fetchTasks();
                    //  Navigator.pushNamed(context, '/updateTask/${task.id}');
                  });
            },
          ),
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-03
      • 2015-08-30
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多