与RIkuloUI飞镖。为什么没有输出?

时间:2015-11-23 22:14:16

标签: javascript dart rikulo

晚上好,Coders,

我对Dart和Rikulo_Ui有一个严重的问题,更具体的问题只有Rikulo_Ui。

我真的是所有Dart的新手,所以请保持温和,不要犹豫,要求更多的信息。

我的问题是,一旦我尝试使用Rikulo_ui组件,我只能在浏览器中看到一个白色的屏幕,没有任何显示。真的没什么。调用rikulo部分的代码,但Rikulo方法的第一次调用导致白屏错误。所以对于这段代码:

import 'package:rikulo_ui/view.dart';
import 'dart:js' as js;
void main() {
  js.context.callMethod("alert",["Hello"]);
  final welcome = new TextView("Hello World!");
  welcome.profile.location = "center center";
  welcome.on.click.listen((event) {
    welcome.text = "Hi, this is Rikulo.";
    welcome.style.border = welcome.style.border.isEmpty ? "1px solid blue": "";
    welcome.requestLayout(); //need to re-layout since its size is changed
  });
  welcome.addToDocument();
}

完全调用警报但我只看到白屏。 dartium浏览器的开发人员工具使我遇到以下异常:

package:rikulo_ui/src/view/view_impls.dart:26 Exception: No static getter 'browser' declared in class '_ViewImpl'.

NoSuchMethodError: method not found: 'browser'
Receiver: Type: class '_ViewImpl@107880211'
Arguments: [...]

我在pub中使用了教程中的配置,只添加了依赖项rikulo_ui并使用了pub getpub install

应显示我的代码的HTML文件如下所示:

<!DOCTYPE html>
<html>
<head>
    <title>Hello World!</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <link rel="stylesheet" type="text/css" href="packages/rikulo_ui/css/default/view.css" />
</head>
<body>
<script type="text/javascript" src="packages/browser/interop.js"></script>
<script type="application/dart" src="HelloWorld.dart"></script>
<script src="packages/browser/dart.js"></script>
</body>
</html>

来自Rikulo方面的下载示例退出时出现同样的错误。我真的只是不能使用任何Rikulo组件。我还确保Dartium和Dart都具有相同的版本(1.13.0)。

感谢您的帮助!

此致 托

2 个答案:

答案 0 :(得分:2)

请升级到最新的Rikulo UI(0.8.0)。我修复了最新SDK的一些不兼容问题。

答案 1 :(得分:1)

一些建议与您的问题中的问题无关,但在尝试使用Dart时可以避免一些问题:

要使所有工具正常工作,您应该坚持使用Pub包布局约定https://www.dartlang.org/tools/pub/package-layout.html

  • 在GitHub存储库中,pubspec.yaml文件应位于顶级(无Dart子目录)。在这种情况下,这并不重要,但会阻止在pubspec.yaml中将存储库添加为依赖项。 https://www.dartlang.org/tools/pub/dependencies.html#git-packages

  • 网页条目页面应位于web顶级目录中。这更重要。

  • 只是Dart样式指南推荐:仅在文件和包名称中使用小写和下划线。这可以确保所有操作系统上的一切运行良好。

  • 添加具体版本约束,而不是noneany。当发布的旧包本身没有适当的约束时,这通常会导致意外的旧包版本,如果由于不兼容的约束而与最近的包存在解决冲突,有时会选择这些旧版本。