yii组件:事件和行为?

ajs*_*sie 12 php yii

我正在学习yii框架并阅读了他们的文档.

但我仍然不明白这些组件.这些是什么.他们谈论组件事件和行为.

有人可以为我解释这些条款,并给我一个组件,其事件和行为可能是什么的真实应用示例?

会有帮助的!

Fla*_*ius 5

CComponent本身并没有做太多.它非常像Qt中的QObject.CComponent可以引发事件,并且可以拥有事件的委托(通过attachEventHandler()).

关于行为,手册说:

可以调用行为的方法,就好像它们属于组件一样.可以将多个行为附加到同一组件.

要将行为附加到组件,请调用attachBehavior; 并从组件中分离行为,调用detachBehavior.

通过分别调用enableBehavior或disableBehavior,可以临时启用或禁用行为.禁用时,无法通过组件调用行为方法.

从版本1.1.0开始,可以通过附加到的组件访问行为的属性(其公共成员变量或通过getter和/或setter定义的属性).

这使您可以模拟信号和插槽机制,或策略模式(通过启用或禁用行为).

Yii中的大多数类都将CComponent作为基类.

作为用户,当您创建自己的组件(在protected/components /下)时,您将看到他们通过上述机制提供的好处.

您可以在此处找到实现组件的良好起点:http://www.yiiframework.com/doc/guide/basics.component