由于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类似的东西?
答案 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软件包。 这不是太难,但很麻烦。 有人试图创建一个开箱即用的抽象包,但我不知道进展情况。