End.js

实时数据库框架
授权协议 MIT
开发语言 JavaScript
所属分类 数据库相关、 NoSQL数据库
软件类型 开源软件
地区 国产
投 递 者 杜俊风
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

第一次看到Firebase就被它所吸引,此后尝试使用它开发了一个chrome聊天插件,开发过程中,Firebase极大的提高了开发效率。由于对Firebase的强烈兴趣,所以毕设选择做一个类似的东西,便是End.js

Firebase几个优点:

  1. 云服务,随时扩展,高性能,无需部署管理自己的服务器,数据库,大大减少工作量
  2. api简单,使用起来非常的方便,可大大减少代码量
  3. 可通过网页对数据进行管理,很方便

Firebase几个缺点

  1. 数据结构和数据库存储方式不一致(由于想支持REST方式读取数据)
  2. 不能部署自己的数据库(很多项目都需要自己维护数据库的)
  3. 目前数据操作能力教弱(有很多需求(稍微复杂点的查询)目前Firebase很难支持)
  4. 数据分析功能很弱,只能查看流量和当前在线人数(独立数据库的话,这部分很容易做的更强大)
  5. 不支持离线开发(废话。。)
    总结一下就是Firebase弱化了数据库的存在,看起来很酷,但是现实情况下出于安全、数据分析等考虑,自己维护数据库才是更合适的。

为什么使用End

  1. 如果想部署一个自己的Firebase,可以考虑使用End
  2. 增强了数据库操作能力
  3. 尽量和Firebase api设计一致
  4. 很方便的和其他Node Package结合使用

客户端使用:

var chat = new End('chat','http://localhost:8080'),
    chatRoom = chat.child(window.location.search.split('?')[1]),
    chatMsgs = chatRoom.child('msgs');
chatMsgs.on('child_added',function(msg){
    $('.msgs').append('<div class="msg">'+msg.value.name+' : '+msg.value.text+'</div>');
});
$('#btn_send').click(function(){
    var name = $('.txt_send_name').val();
    var text = $('.txt_send_text').val();
    chatMsgs.push({name:name,text:text});
});

  • 学习前端vue+ts构建项目的时候总会遇到以下的问题: An import path cannot end with a ‘.ts’ extension. Consider importing ‘@/core/services/JwtService.js’ instead. 网上很多文章会让这么改: # 在tsconfig.json中加入以下配置 "baseUrl": ".", "paths":

  • js实现endwith方法 <script> String.prototype.endWith = function (endStr) { var d = this.length - endStr.length; return (d >= 0 && this.lastIndexOf(endStr) == d) } // 调用 var test = 'test.htm

  • // .prettierrc.js module.exports = { // 最大长度80个字符 printWidth: 80, // 使用单引号, 默认false(在jsx中配置无效, 默认都是双引号) singleQuote: true, // 行末分号, 默认true semi: false, // JSX双引号 // jsxSingleQuote: fal

  • module.exports = { printWidth: 300, //一行的字符数,如果超过会进行换行,默认为80 singleQuote: true, //字符串是否使用单引号,默认为false,使用双引号 endOfLine: 'auto', //避免报错delete (cr)的错 semi: false, singleQuote: true, // 使用单引号

  • 今天在写一个html文件,突然不能保存了,提示错误为: Save Failed JavaScript file name must end with .js, or one of the registered JavaScript-like extensions 后来上网查资料,关于这个错误的内容太少了,所以,把我解决的方法记录下来。 错误原因: 看看你的文件是否加了断点。 解决方法: 去掉页面中

  • sql.js是一个javascript访问SQLite数据库的封装库。 项目的Github地址是:https://github.com/sql-js/sql.js 文档地址是:https://sql.js.org 源码不方便访问的,也可以从这里下载。 自己写了两个用例,第一个访问的是浏览器内存数据库,第二个是持久化的数据库文件。上代码: 文件名:sqlite_memory.js let confi

  • 扩展程序问题 逐一关闭即可,就会看到报错消失

  • 1、前端更具需求下载flv.js插件 FLV.JS 2、延迟 setInterval(() => {       if (this.player.buffered.length) {         let end = this.player.buffered.end(0);//获取当前时间值         let diff = end - this.player.currentTime;//获

 相关资料
  • 我在一个Android应用程序中使用Firebase数据库,每次用户启动时,我都会在数据库中存储一些值,为此我会执行以下操作: 正如您在子方法中看到的,如果称为“usrId”,它将创建usrId目录,并在其中添加所有neccesary信息。但是我想为每个用户创建目录,所以我尝试传递usrId变量作为参数。但它不起作用。当我调试代码时,调试器说本地var usrId无法识别,我的问题是如何在Fire

  • 我曾想过简单地对数据库运行一个小命令并捕获任何异常,然而,如果出现问题(例如app.config丢失或数据库服务器关闭),应用程序将花费大量时间运行此代码,然后抛出异常(大约1分钟)。我想这是由于连接超时等,但我已经摆弄了这样的属性没有任何作用。 有没有人能提供任何关于去哪里的建议?

  • 我使用Firebase,确切地说是一个实时数据库,我不知道应该设置什么规则。我制定了以下规则: 但现在每个人都可以写作了。当我设置这些: 使用Gmail的用户无法登录,因为数据库中的记录没有创建,但不是在所有设备上。当我在OnePlus上测试时,一切都很好,当我在三星上测试时,数据库中的记录没有创建。这是我负责创建用户的代码:

  • 我一直试图运行事务方法,但它无法在firebase数据库中获取和设置正确的数据。 代码如下:

  • 所以我正在制作约会应用程序,现在我需要为用户创建一个匹配的人员列表。 因此,我需要一个firebase查询来查看性别,并检查是否已经匹配,如果匹配,则不应将其包括在列表中。 我试着按性别过滤数据。如何编辑此查询以检查它们是否已匹配?匹配项显示在用户/{userID}/Matches/{matchedUserID}中 这是我尝试的: