我们可以使用Flutter / Dart获得应用程序共享服务器(API)和客户端代码(iOS / Android / Web)吗?

时间:2018-05-02 08:12:30

标签: dart flutter

由于Flutter已经采用了Android和iOS应用程序的共享库方法;是否有可能扩展这个想法,使用Angular-Dart使用Dart和Web内容添加服务器(API)代码?我可以看到media queries的示例,并且可以看到server and client code being shared(Flutter) - 是否存在iOS,Android,Web和API代码之间共享业务逻辑的示例?与Android and iOS code being shared类似的东西?

1 个答案:

答案 0 :(得分:4)

只需将您的代码移动到另一个

的Dart包中

不依赖(直接或传递)

  • dart:ui(Flutter)
  • dart:html或Angular(浏览器)
  • dart:io(服务器或控制台)

当您在特定平台上使用与平台无关的代码时,需要对其中一个需要依赖的所有内容都需要进行抽象,然后注入(作为参数传递)。

实际上,您可以在依赖于dart:io的服务器和Flutter之间共享代码,但这种依赖性会阻止在浏览器中使用代码。

另见

在我正在开展的项目中,我在共享包中有built_value个模型类和built_redux(actions,reducers,state),并在Flutter和Angular中使用它。

主要的难点是Firebase需要抽象整个Firebase API,因为Angular和Flutter使用不同的Firebase软件包。 这不是太难,但很麻烦。 有人试图创建一个开箱即用的抽象包,但我不知道进展情况。