小编Dim*_*urs的帖子

什么时候 route.didPop(result) 在 Flutter Navigator 2.0 中等于 false

Flutter Navigator 2.0 的主要机制之一是 RouterDelegate > build > Navigator 中的 onPopPage 函数。但是,我不明白 route.didPop(result) 何时返回 false。

我们可以使用John Ryan 的著名例子来说明我的问题。他的演示代码

onPopPage: (route, result) {
  if (!route.didPop(result)) {
    return false;
  }

  // Update the list of pages by setting _selectedBook to null
  _selectedBook = null;
  show404 = false;
  notifyListeners();

  return true;
},
Run Code Online (Sandbox Code Playgroud)

在我所有的测试中,使用 AppBar 自动生成的后退按钮,route.didPop(result) 返回 true。

文档保持不变:

bool didPop(dynamic result)
package:flutter/src/widgets/navigator.dart

A request was made to pop this route. If the route can handle it internally (e.g. because …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-navigation flutter-state

7
推荐指数
1
解决办法
997
查看次数

消费者提供者 Flutter 中 child 的目的是什么

我有一个关于 Flutter 中的 Provider 包的 Consumer 的问题。我不明白在 Consumer 的构建器中参数“child”的目的

Consumer<MyModel>(builder: (context, myModel, child) {
// doing stuff using myModel variable
});
Run Code Online (Sandbox Code Playgroud)

我找不到任何关于它的文档。

provider flutter

6
推荐指数
2
解决办法
3519
查看次数

ChangeNotifierProvider 中 Consumer / Provider.of 的差异

我不太明白 Provider.of() 和 Consumer 之间的区别。我在这里读到Consumer 就像 Provider.of 一样,带有listen: true。

但是,在下面的示例中,当我使用 Consumer 时我没有收到错误,但在使用 Provider.of 时却收到错误。我被迫使用listen: false。下面的示例是实现了 ChangeNotifierProvider 的默认 flutter 应用程序。

我只需更改 main.dart 中的 floatActionButton 中的代码即可查看 Consumer、Provider.of Listen: true 和 Provider.of Listen: false 之间的差异

counter.dart代码

import 'package:flutter/material.dart';

class Counter extends ChangeNotifier {
  int value = 0;

  void increment() {
    value++;
    notifyListeners();
  }

  void decrement() {
    value--;
    notifyListeners();
  }
}
Run Code Online (Sandbox Code Playgroud)

main.dart 的完整代码,其中包含使用 Consumer 的浮动操作按钮。这是工作

import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:unit_test/counter.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-provider

5
推荐指数
1
解决办法
2572
查看次数

如何使用 Directus 创建和部署端点?

我有一个新手 Directus 问题:

\n

如何创建端点并将其附加到我的项目?

\n

我尝试跟随文档但徒劳:

\n

创建一个directus项目

\n
    \n
  1. npm init directus-project example-project
  2. \n
\n
    \n
  • SQLite / 管理员 / 密码
  • \n
\n
    \n
  1. cd example-project; npx directus start
  2. \n
  3. 我可以访问 directus 管理员http://0.0.0.0:8055/admin/content
  4. \n
  5. CTRL+C
  6. \n
\n

创建端点

\n
    \n
  1. cd ..,离开我的 directus 项目,npm init directus-extension
  2. \n
  3. 端点/演示-directus-端点/javascript
  4. \n
  5. 修改端点//hellosrc/index中
  6. \n
  7. cd demo-directus-endpoint; npm run build
  8. \n
\n

在 directus 项目内部署扩展

\n

https://docs.directus.io/extensions/creating-extensions/

\n
To deploy your extension, you have to …
Run Code Online (Sandbox Code Playgroud)

directus

5
推荐指数
1
解决办法
4192
查看次数