随笔分类 - Meteor
摘要:功能描述:在浏览器退出时(所有tab关闭时)退出登录需求来源:支持类似传统网页登录时的remember me选项背景:Meteor应用中,用户登录后,会在浏览器的localStorage保存resume token, 所以下次再使用该浏览器打开同一meteor应用时,会自动登录。有时,我们希望应用支...
阅读全文
摘要:微博使用Oauth2.0向第三方授权,具体信息参考oauth2和微博官方文档。meteor的用户系统集成了第三方账号绑定功能。实际上,在meteor的用户系统中,用户通过账号关联的service进行认证(登录),service可以是weibo、twitter、google等第三方账户,也可以是pas...
阅读全文
摘要:Meteor应用的UI状态该如何存放?这里介绍几种方法。SessionSession是meteor提供的一个前端全局reactive数据源。使用方法简单,功能也相对简陋,适用于页面结构简单的单页应用。Local Collection前端通过new Mongo.Collection(null)创建一个...
阅读全文
摘要:所谓延迟补偿,即在前端执行某项数据变更业务之后,不等后端返回执行结果,前端先行模拟执行,以尽快呈现结果给用户。如果服务端返回执行成功,则前端不需要进行任何变更渲染。如果服务端返回执行失败,则前端根据后端返回信息进行修正渲染。延迟补偿得以实现的基础,是前后端数据协作机制。具体来说,原本整个数据变更流程...
阅读全文
摘要:对于Meteor应用来说,模型是不透明的,即,虽然在后端进行建模和模型操作、业务操作控制,前端仍然需要了解模型结构以正确进行前端业务。前端与数据的关系,主要有变更和查询两类。前端若要执行数据变更,需要调用后端提供的methods(参考)。前端对数据的查询,主要通过pub/sub模型来实现。后端可以有...
阅读全文
摘要:关于客户端进行数据变更操作,meteor提供了两套机制:客户端CRUD+服务端deny/alllow服务端methodsCRUD操作的层次是在数据模型级别,而methods的操作层次是在业务级别,这也对应了它们的权限控制级别。个人认为,在客户端直接进行CRUD操作(数据模型级别的操作),表面上灵活很...
阅读全文
摘要:受React组件思想启发,本文讨论在Meteor客户端应用组件化思想,以Spacebar模板语言为例。所谓前端组件(我的定义),是一组html代码以及相关样式、行为的封装。它可被复用,通过传递参数进行初始化,并可以调用其定义的方法对其进行控制。并且,其状态,样式都是局部封装的,不会扩散并影响全局。典...
阅读全文
摘要:Meteor基于Node.js,但是却有自己的包管理系统(atmosphere)以及代码加载机制,且meteor是非异步的,这些都意味着,node.js包(npm package)和代码通常不能直接用于meteor程序。这里分享三种方法以在meteor中复用node.js包和代码。meteorhac...
阅读全文
摘要:实例按面向对象编程语言的说法,我们编写Template(html、helpers、events、lifecycle)时,相当于编写了一个类,而渲染Template的时候,则创建了一个它的实例。我们可以在这个实例上添加变量,并在合适的地方引用它。那么,如何访问这个实例?在lifecycle中(onCr...
阅读全文

浙公网安备 33010602011771号