庞各庄网站建设-yii2微信小程序开发教程

2021-01-11 01:37| 发布者: | 查看: |

--------

庞各庄网站建设

-------

文架构的配备和user组件的配备中大家就数次抛出个人行为的定义,再加上上一节大家文末的引子,坚信许多小小伙伴都很期待个人行为究竟是个甚么东东。今日大家就揭开它的面纱,看看个人行为究竟是甚么!

个人行为,大家看下百度搜索百科给出的基本解释:谓言行举止行動;指受观念操纵而主要表现出来的表面主题活动。如:做派出作,传出声音,作出反映。

再来看下官方是怎样界定的:个人行为是 yii\base\Behavior 或其子类的案例。 个人行为,也称为 mixins, 能够不必更改类承继关联便可提高一个已有的 yii\base\Component 类作用。 当个人行为额外到组件后,它将“引入”它的方式和特性到组件,随后能够像浏览组件内界定的方式和特性一样浏览它们。 另外,个人行为根据组件能响应被开启的恶性事件, 从而自定或调剂组件一切正常实行的编码。

官方就是官方,没自信心的同学看完估算头脑都蒙了有木有!

提示:官方这里界定中叙述的 “组件” ponents配备,这里所说的组件是 yii\base\Component 子类的意思哦。

大家用自身的话再来归纳个人行为:实质就是一个类(yii\base\Behavior 或其子类的案例),根据某些独特方法(引入,关联),同另外一个类(yii\base\Component 或其子类的案例)开展了关联,随后两者能够开展互动。这句话你能够多看两遍,最终内心先搞清楚,谁和谁关联了。

那为啥要应用个人行为呢?个人行为有啥益处?个人行为,就是对当今类开展一个拓展,并且无需改动当今类!听起来是否很玄乎?如今再结合一下大家上文说的100个操纵器的难题,是否豁然开朗间就搞清楚个人行为是甚么啦?

大家来一个事例加深下了解。

 ?php
ponents;
use Yii;
class MyBehavior extends \yii\base\ActionFilter
 public function beforeAction ($action)
 var_dump(111);
 return true;

很简易,大家界定了一个名为MyBehavior,承继yii\base\ActionFilter的类。实际看下文详尽剖析。

随后改动 BlogController 的 behaviors 方式以下

public function behaviors()
 return [
 //额外个人行为
 'myBehavior' = \ponents\MyBehavior::className(),
 'verbs' = [
 'class' = VerbFilter::className(),
 'actions' = [
 'delete' = ['POST'],

此时大家浏览下 /index.php?r=blog 会发现,网页页面的最上面有复印111出来。咦?产生了甚么?大家来剖析下。

ponents 下建立了一个类文档,就是一个类,大家给这个类起一个姓名,个人行为类。前面大家给出了个人行为类的含意,就是一个承继了 yii\base\Behavior 或其子类的案例。大家看下 MyBehavior 类的父类 \yii\base\ActionFilter,不难发现该类就是承继的 \yii\base\Behavior 类。这般,大家便界定好了一个个人行为类。该个人行为类只做了一件事,在 beforeAction 方式中复印111。个人行为类写好了,大家再看下他又是如何跟 yii\base\Component 子类开展关联的。

大家在BlogController方式中,重新写过了 behaviors 方式,behaviors 方式用来给当今类配备有关的个人行为类。根据查询源代码发现,BlogController 是 \yii\base\Controller 的子类,而 \yii\base\Controller 又是 \yii\base\Component 的子类,这就认证了大家上面所说个人行为类是跟 \yii\base\Component 的子类开展关联。

这般,ponents\MyBehavior 便跟大家当今的操纵器 BlogController 开展了关联。关联以后,BlogController 便可以应用 MyBehavior 的特性和方式了,又因为是 beforeAction,因此就很当然的在 blog/index 实际操作实行之前启用啦。即网页页面顶部有輸出 111 的状况。根据这个实例,你搞清楚了个人行为究竟是如何回事了么?不搞清楚也心有八九了,大家再来看一下怎样手动式启用个人行为类的方式。

假定 MyBehavior 仍然额外在 BlogController中 ,大家在 MyBehavior 类中加上一个分辨客户是不是是访客的方式,看看怎样在 BlogController 的 index 实际操作中去同行业为类开展互动。

MyBehavior 的 isGuest 方式

public function isGuest ()
 return Yii::$app- user- isGuest;

BlogController 的 index 实际操作的一部分编码

public function actionIndex()
 $myBehavior = $this- getBehavior('myBehavior');
 $isGuest = $myBehavior- isGuest();
 var_dump($isGuest);
 // 或你还可以这样立即启用
 $isGuest = $this- isGuest();
 var_dump($isGuest);
 // ......
}

到此,你搞清楚怎样界定个人行为类和怎样实际操作个人行为类了么?

自然,个人行为的额外和移除也有别的几种方法,大家就先详细介绍到这里,别的几种大同市小异,有甚么不懂的下面给我留言。

下一章节,大家提前准备根据个人行为,来处理rbac的分派难题!


有关妙客

烟台妙客互联网创立于2016年,是由一群喜爱技术性的年青人建立,做为“新企业”,她们给顾客带来了的也是全新的技术性,全新的设计方案潮流和最时兴的构架,因此大家是“新人”,而且会始终维持全新的,最前沿的技术性工作能力,给顾客带来更为技术专业的服务。

因此大家的精英团队是一个工作经验丰富多彩的精英团队,是一个积极主动向上的精英团队,是一个斗志满满的精英团队,是一个時刻学习培训并实践活动全新技术性的精英团队。

---------

庞各庄网站建设

------------
<
>

 
QQ在线咨询
售前咨询热线
18720358503
售后服务热线
18720358503
返回顶部