使用 Meteor 轻松开发实时网站

别再到处找了!惠普、华三、华为等主流服务器维保查询入口,一个页面全搞定 本文整合了惠普、华三、华为等主流服务器的维保查询入口,提供高效查询技巧和自动化脚本,帮助运维人员快速获取设备维保状态,显著提升故障响应效率。特别针对服务器维保查询中的常见陷阱和隐藏功能进行详细解析,适用于企业级设备管理。 阅读详情

使用 Meteor 轻松开发实时网站

快速实现几乎实时地响应用户交互的数据驱动应用程序

David Berube, 所有者, Berube Consulting
David Berube 的照片
David Berube 是一名顾问和演讲者,他还是 Practical Rails Plugins, Practical Reporting with Ruby and Rails 和 Practical Ruby Gems 这两本书的作者。

简介: 由于 Web 无处不在,即便是很小的数据交付延迟都有可能刺激到用户。他们希望数据即时更新。不幸的是,Web 技术无法实现这种实时访问。尽管数据访问正快速标准化为一些对象关系映射 (Object-Relational Mapping, ORM) 模型,但实时通信没有任何类似的解决方案。本文将讨论 Meteor,这是一个旨在解决此问题的激动人心的新 JavaScript 框架。

发布日期: 2013 年 3 月 14 日

什么是 Meteor?

Meteor 是一种新的 JavaScript 框架,用于自动化和简化实时运行的 Web 应用程序的开发。它使用一个名为分布式数据协议 (Distributed Data Protocol, DDP) 的协议来处理实时通信,使用 WebSockets 的新浏览器以及使用 Asynchronous JavaScript + XML (Ajax) 长轮询的旧浏览器来支持这种协议。在这两种情况下,浏览器到服务器的通信是透明的。

DDP 协议旨在处理 JavaScript Serialized Object Notation (JSON) 文档集合,使 JSON 文档容易创建、更新、删除、查询和访问。因为 DDP 是一种开源协议,所以您可将它连接到任何客户端或数据存储。它为 MongoDB 提供了开箱即使用支持。

事实上,Meteor 提供了两个 MongoDB 数据库:一个客户端缓存数据库和服务器上的一个 MongoDB 数据库。当一个用户更改一些数据时(例如通过单击 Save),在浏览器中运行的 JavaScript 代码会更新本地 MongoDB 中的相应的数据库项,然后向服务器发出一个 DDP 请求。该代码立即像操作已获得成功那样继续运行,因为它不需要等待服务器回复。与此同时,服务器在后台更新。如果服务器操作失败或返回一个意外结果,那么客户端 JavaScript 代码会依据从服务器新返回的数据立即进行调整。这种调整称为延迟补偿,向用户提供了更高的认知速度。

显然,甚至连 Meteor 的模板系统也是为简化实时通信而设计的。在大多数 Web 框架中,您可以轻松地混合使用超文本标记语言 (HTML) 和代码,或者与 HTML 等效的标记,比如 HTML 抽象标记语言 (Haml)。这使您能够轻松地将来自数据库的动态值插入发送给用户的页面中。在这之后,您应该负责准备提供一个系统来观察对数据的更改,然后更新您的标记。但是,Meteor 中的模板系统用于记录访问了模板中的哪些数据,并自动回调,以便在底层数据更改时调用此 HTML,使实时模板变得更加简单快捷。


示例:链接流行度竞赛

Meteor 的模板功能可使众多实时应用程序更容易编写。例如,假设您希望创建一个的站点,用户可在其中输入链接(即统一资源定位符,URL),并投票肯定和否决它们,而且赢得流行度竞赛的 URL 会显示在一个列表顶部。通过使用 Meteor,您可以轻松地实时编写这样一个应用程序,以便用户可在其他用户投票时看见他们的 65 张选票。


安装 Meteor

要安装 Meteor,可以将 清单 1 中所示的代码键入到一个 Linux® 或 Mac OS® X 终端中。Meteor 不支持 Microsoft® Windows®。


清单 1. 安装 Meteor
				
curl https://install.meteor.com > install_meteor.sh
chmod u+x install_meteor.sh
./install_meteor.sh

现在您可创建一个新项目。


创建一个新项目

meteor 命令可自动化包含新项目创建过程中 Meteor 需要操作的一切内容的。键入 清单 2 中所示的命令,以便创建一个名为 realtime_links 的项目。


清单 2. 创建您的 Meteor 项目
				
meteor realtime_links
cd realtime_links

Meteor 创建了一个目录,其中包含一个 HTML 文件、一个 JavaScript 文件和一个级联样式表 (CSS) 文件。最后一个文件是一个标准 CSS 文件,但前两个值得讨论一下。您可以从 下载 一节下载 realtime_links.html 和 realtime_links.js 文件的完整版本。


realtime_links.html 文件

清单 3 显示了 realtime_links.html 文件的标头和正文片段。


清单 3. realtime_links.html 标头和正文片段
				
<head>
<title>Realtime Links Demo</title>
</head>

<body>
  {{> header }}
  {{> link_list }}
  {{> add_new_link }}
</body>

可以看到,HTML 模板的开头非常简单。无需担忧如何包含 BODY 标记、DOCTYPE 修饰符甚至 JavaScript 和 CSS 文件。Meteor 会为您处理所有这些操作。有关 Meteor 的 JavaScript 和 CSS 包的更多信息,请参阅 参考资料,获取 Meteor 网站的链接。

{{> 语法表示 “呈现此模板”。可以看到,realtime_links.html 呈现了 3 个模板:

  • header 是一个简单头部,显示了数据库中的链接数量。
  • link_list 显示了链接的列表和它们的相关投票。
  • add_new_link 是添加新链接的表单。

清单 4 显示了 header 模板。


清单 4. realtime_links.html header 模板
				
<template name="header">


<h1>The Link Collection</h1>

	<p>We currently have {{collection_size}} links.</p>

</template>

header 模板呈现了一个 h1 标记以及对集合大小的简短描述。collection_size 方法是在 JavaScript 文件 realtime_links.js 中定义的(这将在 下一节 中详细讨论)。Meteor 自动观察某个模板插入了哪些数据片段。所以,在更新集合大小时,header 模板会自动更新。

请注意,这里使用的 {{ ... } 语法类似于 Ruby on Rails 中的 <%= ... %> 或 PHP 中的 <?= ... ?>。它可插入任意代码,所以能够以这种方式插入任何有用的动态表达式。

清单 5 显示了 link_list 模板。


清单 5. realtime_links.html link_list 模板
				
<template name=
"link_list">

  <ul>

    {{#each links }}

      <li>  {{> link_detail }} </li>

    {{/each }}

  </ul>

</template>

如您所见,清单 5 中的代码是一个链接列表。realtime_links.js JavaScript 文件中的 links 方法提供了此列表。系统会向每个链接呈现link_detail 模板。请注意,无需传递任何参数,因为 Handlebars 的 #each 循环会将每次迭代的当前上下文设置为当前对象。换句话说,会将 link_detail 模板的本地方法正确解释为每个链接对象的方法。

清单 6 显示了 link_detail 模板,它控制了为每个链接显示的数据。


清单 6. realtime_links.html link_detail 模板
				
<template name="link_detail">


<div id="link-{{id}}">

    <h1>{{url}}</h1>

    <p><strong>Stats:</strong> up: {{thumbs_up}} down: {{thumbs_down}} 
net score: {{score}}</p>


<input type="button" value="Thumbs Up" 
 class="thumbs_up" url="{{url}}" />
    <input type="button" value="Thumbs Down" 
class="thumbs_down" url="{{url}}" />


</div>

</template>

h1 元素简单地显示当前链接的 URL。然后会提供一个间断的统计清单,其中包含一个链接被支持的次数、被否决的次数和它的净分数(也就是两个值的差)。最后,有两个按钮:一个用于投赞成或支持票,另一个用于投反对或否决票。JavaScript 文件定义这些按钮的行为,但是在深入介绍此主题前,还有一个模板需要了解。

清单 7 显示了 add_new_link 模板。


清单 7. realtime_links.html add_new_link 模板
				
<template name="add_new_link">

  <div id="new_link_form">

    URL: <input id="url">

<input type="button" value="Click" id="add_url" />

  </div>

</template>

该模板只是一个文本输入字段和一个按钮,它们共同形成了向您列表中添加新 URL 的界面。


realtime_links.js 文件

realtime_links.js 中的 JavaScript 代码控制来自您程序的数据访问和事件回调,无论是在客户端还是在服务器上。if (Meteor.is_client) 语句用于标记客户端部分,if (Meteor.is_server) 语句用于标记服务器部分。Meteor 提供了一种保护敏感代码的方式,阻止恶意客户端看到源代码。参见 参考资料 中的 Meteor 文档链接,了解有关的更多细节。

清单 8 显示了标头和链接列表帮助器函数。


清单 8. 标头和链接列表帮助器函数
				

Template.header.collection_size = function () {
return Links.find({}).count();
	};


	Template.link_list.links = function () {
return Links.find({}, {sort : {score: -1} });
	};

header 模板使用清单中的第一个帮助函数,该函数返回 links 集合的大小。link_list 模板使用第二个帮助器函数,它返回从最高分到最低分排序的所有链接。

清单 9 拥有对 link_detail 模板的两个事件回调。


清单 9. link_detail 事件回调
				
	Template.link_detail.events = 
{

'click input.thumbs_up' : function () {
Meteor.call('vote', this.url, 'thumbs_up');
},

  'click input.thumbs_down' : function 
() {Meteor.call('vote', this.url, 'thumbs_down');}

	};

每个事件回调处理一个支持或反对单击事件。在每种情况下,它们使用客户端上的 Meteor.call 在服务器上执行一次函数调用。可以看到从客户端对服务器执行调用很简单。例如,序列化会自动处理。

清单 10 显示了对用户可添加新链接的表单的事件回调。


清单 10. 对添加新链接表单的事件回调
				
  Template.add_new_link.events = {

    'click input#add_url' : 
dfunction () {

var new_url = $('#url').val();

      var url_row = Links.findOne( {url:new_url} );

      if(!url_row){

Links.insert( { url : new_url,
score: 0,
thumbs_up: 0,

thumbs_down: 0 });
      }
Meteor.call('vote', url, 'thumbs_up');

    }
  };


首先,该表单会尝试找到一个具有所请求 URL 的现有链接对象。如果它找到这样一个对象,那么它会将该请求统计为对这个现有链接对象的一次投票。如果未找到,那么它会创建一个新链接对象,并对这个新对象执行一次 thumbs_up 投票。

这部分代码演示了 Meteor 作为一种一流技术的优点和不足,它还不适合用于生产。如您所见,客户端可在 links 集合上调用 insert。尽管这对开发人员很有用,但从安全角度讲,这是一个问题。幸运的是,开发人员正在积极研究该代码的一个 auth 分支,这个分支可以实现强大的身份验证功能,同时仍然保持 Meteor 富有吸引力的很多强大功能和灵活性。

此外,需要认识到 Meteor 目前没有实现所有 MongoDB 功能。例如,Meteor 不支持 MongoDB upsert,该操作插入新数据或修改旧数据。如果 Meteor 支持 upsert,那么您可以编写 清单 11 中所示的函数。


清单 11. 一个使用 upsert 的假想的添加新链接表单事件回调
				
  Template.add_new_link.events = {

    'click input#add_url' : function () {

      var new_url = $('#url').val();

       Links.update( { url : new_url}, 
                     { $set: {url : new_url}, 
                       $inc: { votes : 1 } } , true );


    }
  };


如您所见,使用 upsert 的代码更短。它运行得可能更快,因为它仅需要与服务器执行一次往返传输。如果顺利的话,Meteor 很快就会实现对 upsert 和其他新功能的支持。

清单 12 中的代码在服务器上运行。它是一个可由客户端代码调用的方法。此方法(vote)允许客户端对一个流行的 URL 投 thumbs_up 或 thumbs_down 票。它使用 Mongo 的 $inc 运算符递增适当的投票计数器。它还在必要时递增或递减总数。Meteor.startup 方法仅支持代码在服务器启动时运行。Meteor.methods 函数然后定义可在客户端上调用 Meteor.call 的函数,如前面的 清单 9 中所述。


清单 12. 服务器端的 vote 方法代码
				
if (Meteor.is_server) {
    Meteor.startup(function () {
      Meteor.methods({
        vote: function (url, field){

new_obj = { $inc: { } };

 if(field =='thumbs_up'){
new_obj['$inc']['thumbs_up'] = 1;
 new_obj['$inc']['score'] = 1;
 }else{
new_obj['$inc']['thumbs_down'] = 1;
 new_obj['$inc']['score'] = -1;
                }

                Links.update( { url : url}, new_obj );

              }
      });
    });
}

与 清单 10 一样,您可在客户端上运行 清单 12 中的代码。但是,出于演示目的,将会在服务器上运行该代码。随着 Meteor 的安全模型得到改进,可能会将敏感的代码开发为服务器端函数,如下面清单所示。


查看您的应用程序的实际效果

现在可启动您的 Meteor 应用程序(如 清单 13 中所示)并查看它的实际效果。


清单 13. 启动您的系统
				
meteor

在启动后,Meteor 会在端口 3000 上运行。打开一个 Web 浏览器并访问 http://localhost:3000/。

如果在 Add a URL 下输入一个 URL 并单击 Add,则看到一个 URL 和评分 one。然后您可以单击 Thumbs Up 或 Thumbs Down 按钮对该 URL 进行投票。这会实时进行,而不会刷新页面。如果打开一个新 Web 浏览器,可在另一个窗口中执行相同操作,这时第一个窗口会立即更改。

当添加多个 URL 时,可以看到一个具有最高评分的 URL(分数被定义为支持票数减去反对票数)显示在最顶部。在投支持或反对票时,URL 会随着其评分更改而在列表中向上或向下移动。这是实时进行的,在输入投票时,多个浏览器上的多个用户都会收到相同的数据。


结束语

Meteor 是一个极具优势的 Web 框架,它包含了许多有趣的概念。它对实时数据的支持既富有吸引力又至关重要,特别是在考虑到其他技术实时支持充其量是一种事后行为时。随着实时交互变得对未来的 Web 更加重要,Meteor 轻松快速地实时处理复杂数据集的能力也将变得更加重要。



下载

描述名字大小下载方法
本文的示例源代码realtime_links.zip2KBHTTP

关于下载方法的信息


参考资料

学习

获得产品和技术

  • Meteor:一种易于使用、强大且实时的 Web 应用程序框架。

  • MongoDB:一个优秀的面向文档的数据库。

  • CoffeScript:一项强大的 JavaScript 增强,它拥有一个 Meteor 插件,所以您可以在 Meteor 应用程序中使用它。

  • IBM 产品评估版:下载或 在 IBM SOA 沙盒中体验在线试用版,动手使用来自 DB2、Lotus、Rational、Tivoli 和 WebSphere 的应用程序开发工具和中间件产品。

讨论

关于作者

David Berube 的照片

David Berube 是一名顾问和演讲者,他还是 Practical Rails Plugins, Practical Reporting with Ruby and Rails 和 Practical Ruby Gems 这两本书的作者。

全栈JavaScript开发框架Meteor:构建实时Web应用指南 本文还有配套的精品资源,点击获取 简介:Meteor是一个全栈JavaScript框架,它允许开发者使用单一语言在客户端和服务器端进行开发,通过其独特的DDP协议实现数据的实时双向同步,提高开发效率。Meteor具备实时数据同步、Blaze模板引擎、MongoDB集成、代码共享、Pub/Sub模型、强大的包管理系统、热代码推送、跨平台支持、活跃的社区和性能优化工具。这使得Meteor成为构建现代Web应用的有力工具,尤其适合需要实时性和简化开发流程的项目。 阅读详情

相关推荐

Node.js-基于微信服务号API和Meteor开发课程管理SaaS平台

基于微信服务号API和Meteor开发课程管理SaaS平台

Meteor全栈JavaScript框架深度解析:构建实时应用的终极利器

Meteor全栈JavaScript框架深度解析:构建实时应用的终极利器 【免费下载链接】meteor Meteor, the JavaScript App Platform 项目地址: https://gitcode.com/g...

gitblog_00036的博客 753

基于 Qt 6 / C++17 的多算法加解密工具(学习研究用途) 涵盖编码、古典密码、对称/非对称加密、哈希摘要共 24 种算法,全部纯 C++ 自实现,不依赖 OpenSSL/GmSSL

基于 Qt 6 / C++17 的多算法加解密工具(学习研究用途)。涵盖编码、古典密码、对称/非对称加密、哈希摘要共 24 种算法,全部纯 C++ 自实现,不依赖 OpenSSL/GmSSL。含图形界面、批量文件加解密、密钥管理、性能测试与操作日志。提供标准测试向量自测。

基于meteor开发的_用Meteor开发简单的实时网站

什么是流星? Meteor是一个新JavaScript框架,旨在自动化和简化实时运行的Web应用程序的开发。 它使用称为分布式数据协议(DDP)的协议处理实时通信,使用WebSocket的新型浏览器和使用异步JavaScript + XML(Ajax)长轮询的较旧的浏览器均支持该协议。 在这两种情况下,浏览器到服务器的通信都是透明的。 DDP协议旨在与JavaScript序列化对象表示...

cuxiong8996的博客 515

Zabbix-获取客户端的SNMP数据

网口状态(ifOperStatus)的 OID 是1.3.6.1.2.1.2.2.1.8,查询时需要用1.3.6.1.2.1.2.2.1.8.1(第 1 个网口)、1.3.6.1.2.1.2.2.1.8.2(第 2 个网口)等。表格对象是指 “包含多个同类实例的对象”(如设备的多个网口、多个进程等,每个实例需要单独标识)。在 SNMP 规范中,标量对象的完整 OID 必须以.0结尾,.0是标量对象的唯一实例编号。标量对象是指 “单一值的对象”(如设备的名称、温度、状态等,整个设备只需要一个值来表示)。

徐子元 1733

VBOX 3iS实战:如何用GNSS+IMU搞定车辆动态坡度测量(附避坑指南)

本文详细介绍了VBOX 3iS在车辆动态坡度测量中的高阶应用,通过GNSS+IMU融合技术和卡尔曼滤波算法,有效解决了传统测量方法在动态环境中的局限性。文章提供了设备配置、实战策略和数据后处理的实用指南,帮助工程师提升测量精度和效率。

weixin_42520796的博客 322

探索 Meteor:中文文档助力全栈开发新高度

探索 Meteor:中文文档助力全栈开发新高度 去发现同类优质开源项目:https://gitcode.com/ 项目简介 是一个精心翻译和维护的中文版 Meteor 官方文档项目,旨在为中国及全球华语区的开发者提供全面、准确且实时更新的 Meteor 框架学习资源。Meteor 是一个强大的全栈 JavaScript 开发框架,它简化了 Web 应用程序的构建过程,使开发者能够以更高的效率工作。...

gitblog_00078的博客 600

工业异常检测评价指标(I-AUROC、PRO等)

模型评价指标:TPR、FPR、Recall、ROC、AUC、AUROC、IoU、PRO、AUPRO等

qq_1532145264的博客 7444

前端的全栈混合之路Meteor篇:容器化开发环境下的meteor工程架构解析

使用docker compose插件运行容器,对于本地开发来说是更轻便的选择。本文主要是详细的介绍了使用docker创建meteor项目的准备工作和步骤,并解析了基于容器化的meteor项目架构,介绍了一下最佳实践。

分享有趣的、贴近生活的CS知识 1783

组合导航-IMU-GPS-RTK基本介绍

在实际应用中,需要利用 GPS、北斗等方式产生的信号进行初始化,结合惯导信号和卫星导航信号进行进行卡尔曼滤波处理,得出其最佳推算的定位信息。惯导比起卫星定位具有自身的技术优势,测量方法不依赖外界,短期精度高,能稳 定高频地输出信号。工作原理是通过感知物体在空间的角速度、线速度,进而获取物体的姿态、位置和速度等信息,实现对运动物体姿态和运动轨迹的测量,可以实现全天候全地点地工作。但惯导也有自身的缺陷,由于采用积分算法,定位误差随 载体运行不断累积。

NCU_wander的博客 8021

ROS-订阅与处理激光雷达scan话题

激光雷达通常有四个性能衡量指标:测距分辨率、扫描频率(有时也用扫描周期)、角度分辨率及可视范围。测距分辨率衡量在一个给定的距离下测距的精确程度,通常与距离真实值相差在5-20mm;扫描频率衡量激光雷达完成一次完整扫描的快慢,通常在10Hz及以上;角度分辨率直接决定激光雷达一次完整扫描能返回多少个样本点;可视范围指激光雷达完整扫描的广角,可视范围之外即为盲区。

weixin_42438635的博客 4478

​Meteor:全栈JavaScript开发框架的先驱

Meteor 是一个功能强大且易用的全栈 JavaScript 框架,它简化了现代 Web 应用的开发流程,从数据库到用户界面都可以通过一套统一的技术栈来实现。开发者可以选择使用 React、Vue 或原生的 Blaze 作为前端框架,与 MongoDB 进行数据交互时,也可以使用 Meteor 提供的方便的 Minimongo 客户端数据库。Meteor 不仅支持 Web 应用的开发,还可以通过与 Cordova 集成,轻松构建 iOS 和 Android 的移动应用,成为一个真正的跨平台开发工具。

weixin_55010563的博客 701

图像相似度的评价指标 : FID(Fréchet Inception Distance)

FID(Fréchet Inception Distance) 是用来计算真实图像与生成图像的特征向量间距离的一种度量。如果FID值越小,则相似程度越高。最好情况即是FID=0,两个图像相同。 实际计算: 参考链接:https://machinelearningmastery.com/how-to-implement-the-frechet-inception-distance-fid-from-scratch/ # example of calculating the frechet inceptio

weixin_43723625的博客 1万+

Meteor JS 框架入门指南(二)

在本章中,你已经了解了 MongoDB 是什么,面向文档的数据库是如何工作的,以及在命令行中进行了直接查询,熟悉了 Meteor 的默认数据存储系统。你还通过移除简化了你的应用,并且对内置于 Meteor 中的发布/订阅设计模式有了扎实的理解。在下一章中,你将真正加强应用的安全性,允许多用户跟踪和控制他们自己的项目列表,并且你将了解如何通过使用文件夹进一步简化客户端和服务器代码。当我们考虑到应用程序的安全性和可用性时,还有一个我们需要考虑的问题。

龙哥盟 1216

Nestjs框架: 集成 Prisma

NestJS官方文档提供了两种数据库相关的内容:Techniques下的数据库板块和Recipes下的具体数据库集成方案。本文以Prisma为例,演示了如何集成Prisma到NestJS项目中。首先创建NestJS项目并安装Prisma,配置MySQL数据库连接。通过Prisma CLI初始化项目、定义数据模型并生成迁移文件。接着创建Prisma模块和服务,配置Prisma客户端连接数据库。最后在控制器中注入PrismaService实现数据查询。整个过程包含了Docker启动MySQL、Prisma模型定

Wang的专栏 1299

手把手教你学 GPU KMD”相关内容的专栏简介与目录

本专栏系统讲解GPU内核模式驱动(KMD)开发技术,涵盖四大核心模块:1)GPU驱动架构基础,解析UMD/KMD协同机制;2)KMD核心功能,包括内存管理、命令提交、中断处理等;3)底层硬件交互,详解PCIe/DMA传输、多级页表等;4)实战进阶,结合Linux DRM框架代码分析,探讨GPU虚拟化与性能优化。面向具备OS和C语言基础的开发者,提供从理论到实践的完整学习路径,帮助深入理解图形/计算驱动栈的底层实现原理。

amy_mhd的博客 154

前端的全栈混合之路Meteor篇:开发环境的搭建 -全局安装或使用docker镜像

本文将介绍两种不同的方式来搭建 Meteor 的开发环境:通过全局安装 Meteor 工具、使用 Docker 镜像,以及创建和运行一个简单的 Meteor 项目。而配合docker使用也是我比较推荐的,因为版本升级时不用清理残留在电脑里的老旧资源文件,而且部署和构建都能保证环境一致

分享有趣的、贴近生活的CS知识 1554

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Web开发者看过来,Meteor开发框架为你带来下一代高品质实时Web App开发的新模式

自1996年至今,网站的工作方式普遍是由服务器端向浏览器传送整个渲染好的 HTML 文件,下载和刷新需要较长的等待时间。在2012年的今天它迎来了新曙光,这套古老的模式将可能一去不复返了。简单说,新的模式是服务器和浏览器初始化之后只进行纯数据的对话,由浏览器决定怎样渲染它来生成 HTML,远程会话变成了本地的交互,操作动作和数据传输将感觉不到延迟。 Meteor 是一个新鲜出炉的现代网站开发平台

aaa1117a8w5s6d的专栏 1050

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

使用Meteor快速进行Web应用程序开发

您将要创造的 Meteor为您提供了一个快速的开发工作流程,该工作流程将创建可“正常工作”的同构Web应用程序。 流星架构真正美丽,因为它可以立即更新连接到您应用程序的所有客户端。 这对于创建响应式Web应用程序具有巨大的意义。 安装流星 流星的构建考虑了易用性,值得庆幸的是,这一理念从一开始就贯彻始终。 安装就像在Linux / Mac OS X系统上运行以下命令一样简单: cu...

代码教主 417

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Meteor:让实时Web App成为主流

Meteor在2012年4月首次发布,该消息一经发布,便迅速占据了Haceker News头条宝座,并且成为Hacker News上最热门的文章之一。本文是作者Sacha Greif使用Meteor开发的心得体会,他认为Meteor会让实时Web App在未来成为主流。 Meteor是一个新鲜出炉的现代网站开发平台,目前发布的是开发预览版0.5.8,代码以GPL协议开源。大家可以去 Gi

artwebs 9793

Meteor+Vue+Webpack 入门到放弃

前一段时间忙完公司的项目开始闲下来,打算自己写个todolist什么的小应用,然后就跑去调研了一下nodejs环境下有那些比较好的框架写后端服务,本打算用express+sequelize写restful风格API的,可惜没找到更方便的工具快速制作,然后就遇到meteor。 meteor meteor比起express还是使用restfu...

weixin_33696822的博客 376

实时开发框架Meteor API解读系列<一> Meteor.methods

写在前面的话:  1.该系列是零散的。 写到哪个是哪个 不会有个顺序。  2.一篇博客一个API  3.尽量配置一个代码实力 现在开始 关于这个API先看下官方的简单介绍   Defines functions that can be invoked over the network by clients. 大概意思就是定义一些方法

Keep Moving 4773

Meteor开发环境的搭建及简单实用

Meteor开发环境的搭建及简单实用

华清远见 | 程序员的学习天堂 1465

利用动态图层实现数据的实时显示

转自原文 利用动态图层实现数据的实时显示 (ArcEngine IDynamiclayer)   说明:最近一个项目用到这方面知识,文章主要来至网络,后期会加入自己的开发心得。(以下的代码实例中,地图看样子是采用ADF开发)    1.1 前言 不刷新地图而能让数据实时显示,这在ArcGIS中已经不在是一个困扰我们的难题,在ArcGIS Engine的开发过程中,每一次更新数据后都需要...

weixin_33895695的博客 651

Meteor 修改查询条件页面首次显示的时候刷新问题

Meteor中用到组合条件查询,将条件放在session中,条件发生改变的时候重新订阅路由,首次返回数据的时候页面会出现一次刷新,选中条件(状态)丢失。 处理办法: 取消路由中使用session订阅查询的方式 waitOn: -> if Meteor.userId() docId = Session.get("docId") event = Session.ge

~ 1455

Meteor全栈开发平台 - 不仅仅是前端

全栈开发平台 - 不仅仅是前端Meteor和那些名声如雷贯耳的前端框架,比如Angular, React等都不一样,它是一个 采用单一开发语言的全栈开发的平台:开发者可以使用JavaScript同时 进行前端和后端的开发,然后交给Meteor运行这个包含了前后端的完整应用: 从图中你可以看到,Meteo在前端使用浏览器作为基础运行环境,在后端则是以NodeJS作为 基础运行环境,以Mongo

mongo_node的专栏 1160
上一篇: Amazon.com的推荐:从商品到商品的协同过滤
下一篇: Java中的数据存储(堆、栈、常量池)
努力突破
博客等级 码龄17年 36粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值