我使用 Dart 制作了一些应用程序,我有一个简单的问题。我在 dart:html 库中没有找到提示对话框。我发现只有警报和确认对话调用,但这不是我需要的。我已经尝试了 Dart api 的其他一些可能性,但没有办法做到。我认为应该有像模态对话框或 Dart 自己的提示对话框之类的东西。我知道,模态在这里,但它只在弹出窗口中加载另一个文件。
有人可以帮助我吗?
更新:实际上,我找到了一种解决方案。它是 dart:js 库中 JavaScript 的模拟:
var password=context.callMethod('prompt',['Password','']);
这是一个很好的解决方案,但我认为,一定有比模拟 JavaScript 更好的方法。
更新 2:由于 Dart 规范、Dart API 和 Dart 库中的提示对话框不足 here 是 Google 代码问题跟踪器上的一个错误,所以让我们 明星 错误,如果您认为提示在规范或评论中很重要,如果您有任何其他想法,如何以现代方式进行操作(例如,您可以尝试提出诸如内置模态对话框之类的建议)。或者,如果您认为提示/模式对话框的实现也应该使用现代编程语言,请分享它...
更新 3:现在我们正在讨论新的模态警报、确认和提示对话框,它们可以在 Polymer.dart 库中。 Here 是对 Google 代码问题跟踪器的增强,所以让我们 明星 错误,如果您是该对话框的现代模态形式,或者讨论,如果您知道如何做得更好...
最佳答案
您可以使用 js 互操作来执行此操作:
import 'dart:js';
main() {
var result = context.callMethod('prompt', ['Hello from Dart!']);
print(result);
}
我不确定为什么这在 dart:html 中不可用。也许提交一个 bug .
理想情况下,您可以使用另一个 UI 组件库来执行此操作,而不是使用 window.prompt()。类似 these .但是现在还很早,我不确定是否有好的库可用。
更新:
window.prompt() 已被有意从 dart:html 中删除,以阻止其使用,因为它会阻止脚本的执行。
关于dart - 如何在 Dart 中制作 window.prompt?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20058426/