我是 EmberJS 和 RethinkDB 的新手。我使用 rethinkDB 的更改源来获取用户特定数据,以使用 emberjs 创建 Web 推送通知应用程序。
我用nodejs和socket.io创建了相同的内容。它工作正常。我想将其转换为 emberjs 代码。但是当我尝试将 rethinkdb 包含在 Bower.json 中时。我收到一条消息“未找到软件包 RethinkDB”。
"rethinkdb": "~2.0.0"
下面是我使用 Socket.io 和 RethinkDB 的 Nodejs 工作代码
服务器.js
var sockio = require("socket.io");
var app = require("express")();
var r = require("rethinkdb");
var http = require('http');
var io = sockio.listen(app.listen(3000), {log: false});
app.get('/', function (req, res) {
res.sendFile(__dirname + '/home.html');
});
r.connect({host: 'localhost', port: 28015})
.then(function(conn){return r.db('my_db').table('user_feeds').changes().run(conn);})
.then(function(cursor){cursor.each(function(err, data) {
io.emit('feeds', data);
console.log("after Data >>>>>\n"+JSON.stringify(data));
});});
console.log("server started @ http://127.0.0.1:3000/");
home.html
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Asset Tracker</title>
<script src="https://cdn.socket.io/socket.io-1.4.5.js"></script>
<script type="text/javascript">
window.onload = function() {
var socket = io.connect();
socket.on("feeds", function(data) {
document.getElementById("feeds").innerHTML = JSON.stringify(data);
});
};
</script>
</head>
<body>
<div id="feeds"></div>
</body>
</html>
我希望将上面的代码迁移到emberJS。由于我是 Ember 新手,我发现迁移很困难。在线使用 emberjs 的 rethinkdb 的代码示例并不多。
最佳答案
由于您的客户端代码不包含 RethinkDB 特定代码,因此您应该在 socket.io 中查找 ember。 emberjs 有多种实现。
bower 中没有发布 rethinkdb 包。您也可以在浏览器中使用一个 npm 包。
关于javascript - 如何将 RethinkDB 与 EmberJS 框架结合使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35081190/