4-3 指令的概念(2)

看下指令怎么写,其实我们就是要得到它的宿主。然后去操作宿主的样式
ElementRef就是得到宿主包装的类

要写文档结构就要用Renderer2







这是外面容器的样式




再来设置grid-template-areas上面叫做image下面叫做title

然后让他居中。设置宽度为4rem

这样外层容器的指令就写完了。

创建iamge的指令



创建元素的指令


指令的名称

设置grid-area是image。其他的都暂时不需要。



title的指令





导出指令


这三个指令都声明,并且导出


这里加一个循环




定义他是内数组

首先是需要这样的一个类型

图片改成icon



内容是直接复制过来的

id改成number类型的。

查看效果,发现有错误。

把username的双向绑定去掉。

ts内username也去掉

效果就出来了。但是实际上是纵向的,我们只规定了内部的小网格,并没有规定整体的网格的布局方式。

控制图片的大小。如果想要控制图片的大小需要在指令里面有一个输入属性

让他默认等于2rem

再设置height和object-fit



也可以有多个属性,比如object-fit的值也是传递过来的。




使用



看下页面,好像没起效果

问题的原因是设置的过早了。指令也有声明周期。我们把设置的代码都放在ngOnInit方法里面。





继承OnInit

其他的几个指令也这么去修改。



指令就像是html标签的属性。相当于自己做的自定义的属性。可以用于任意的html标签。

改变了某些行为,这就是指令和组价的区别。
 

结束






 

posted @ 2020-08-17 22:26  高山-景行  阅读(144)  评论(0编辑  收藏  举报