Firebase键值存储看起来很有趣,与 Dart 的 HTML 框架一起使用会很有趣。
他们提供了一个 JavaScript 库来读取/写入他们的模型。有人试过在 Dart 上使用它吗?
我的计划(基于很少的 Dart 知识)是:
这看起来是正确的方法吗?或者,有没有更好的方法来做到这一点?
谢谢
最佳答案
您可以通过 js package 使用任何 Javascript 库。 .
对于 Firebase你必须 :
pubspec.yaml
dependencies:
js: any
<script>
到您的 html 页面:<script src='https://cdn.firebase.com/v0/firebase.js'></script>
<script type="application/dart" src="youDartCode.dart"></script>
<script src="packages/browser/dart.js"></script>
<script src="packages/browser/interop.js"></script>
import 'package:js/js.dart' as js;
void main() {
final myDataRef = new js.Proxy(js.context.Firebase,
'https://xxx.firebaseio-demo.com/');
myDataRef.on('child_added', (snapshot, String previousChildName) {
final message = snapshot.val();
print("${message.name} : ${message.text}");
});
myDataRef.push(js.map({"name": 'myName', "text": 'js interop rocks'}));
}
上面的 Dart 代码相当于下面的 JavaScript 代码:
var myDataRef = new Firebase('https://xxx.firebaseio-demo.com/');
myDataRef.on('child_added', function(snapshot, previousChildName) {
var message = snapshot.val();
console.log(message.name + " : " + message.text);
}));
myDataRef.push({name: 'myName', text: 'js interop rocks'});
基本上 :
new js.Proxy(js.context.MyJavascriptObjectName, arg1, arg2, arg3))
, js.map({'attr1', value1}, {'attr2', value2})
. 关于dart - 有没有人尝试过在 Dart 中使用 Firebase javascript 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14904486/