如何让dart到js编译器将dart api导出到js,并使用从原始dart api到js api的直接映射进行转换?
目的只是用dart编写一个库并从js中使用它。
从dart调用js没有问题。但是,我的问题是相反的。目前我无法找到任何库或文档作为该问题的解决方案。在dart:js和package:js库的文档中,明确指出interop只能以一种方式工作。
有不正确的解决方案来实现互操作的另一种方式,但只能通过黑客攻击。例如,Calling Dart code from javascript以一种受互操作库限制的方式强制传递和返回函数,而不是开发人员的意图。
明确地,我不鼓励这样的解决方案https://stackoverflow.com/a/45883551作为答案,因为它是一个灵活但不是标准的解决方案。出于某些目的,建议在原始和转换的apis之间进行标准映射。引用的答案非常复杂。
这意味着即使是术语也可能是错误的,因为它意味着两种操作方式!目前,dart和js之间似乎没有互操作 - 这是真的吗?
答案 0 :(得分:1)
Dart不适合该用例。
dart:js
以及一些黑客package:js
允许逐个公开方法,但这似乎不适合您的用例。
您可以使用用于开发的DDC,但会发出可以从JS中使用的可读代码。
对于生产Dart应该使用dart2js
工具编译为JS,这些工具可以进行树木抖动和缩小。树震动需要整个应用程序分析才能知道需要保留哪些代码。
我从DDC适用于与您类似的用例的项目中听到过。