Meteor:组件思想

受React组件思想启发,本文讨论在Meteor客户端应用组件化思想,以Spacebar模板语言为例。

所谓前端组件(我的定义),是一组html代码以及相关样式、行为的封装。它可被复用,通过传递参数进行初始化,并可以调用其定义的方法对其进行控制。并且,其状态,样式都是局部封装的,不会扩散并影响全局。

典型地,一个组件具有data和states(React中叫做props和statues)。data是外部传入,用于构建、渲染组件的数据,在组件实例的整个生命周期中是不变的。states是组件内部封装的状态,用于协助控制组件行为,和组件的行为和渲染是双向绑定的,且对外部是透明的,组件可以以提供方法或回调的形式向外部暴露状态。

Meteor可以以template的形式封装组件。template可以拥有数据和实例变量,可以用template数据来实现组件data,用reactive模板实例变量来实现组件states,例如定义一个ReactiveDict类型的实例变量states。具体实现方式参考http://www.cnblogs.com/zhaoyao91/p/4535928.html

todo

如何实现组件方法或回调以供外部获取状态,暂时没有想好。可能的方法是,父组件通过data向子组件传递回调函数

 

转载于:https://www.cnblogs.com/zhaoyao91/p/4780905.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值