angular – 如何在Ionic 2/3中编写自定义组件而不会丢失准备好的
发布时间:2020-12-17 17:09:40 所属栏目:安全 来源:网络整理
导读:当我像这样编写自己的自定义组件时: import { Component } from '@angular/core';@Component({ selector: 'deletableItem',template: ` ion-checkbox item-right/ion-checkbox `})export class DeletableItem { constructor() {}} 并在一些html视图中使用它
当我像这样编写自己的自定义组件时:
import { Component } from '@angular/core'; @Component({ selector: 'deletableItem',template: ` <ion-checkbox item-right></ion-checkbox> ` }) export class DeletableItem { constructor() {} } 并在一些html视图中使用它: <ion-content padding> <ion-list> <ion-item *ngFor="let bill of bills" (click)="openEdit(bill)"> <ion-label text-left>{{bill.name}}</ion-label> <deletableItem></deletableItem> </ion-item> </ion-list> </ion-content> 看起来比仅仅把它放在父的组件视图中更糟糕,如下所示: <ion-content padding> <ion-list> <ion-item *ngFor="let bill of bills" (click)="openEdit(bill)"> <ion-label text-left>{{bill.name}}</ion-label> <ion-checkbox item-right></ion-checkbox> </ion-item> </ion-list> </ion-content> 这一切都是因为将此组件的html代码角度包装成html标签.所以我们失去了离子成分的强度(准备好了css).请不要建议属性组件分配如下: <ion-checkbox item-right deletableItem></ion-checkbox> 因为这只是一个简单的例子. 在不丢失准备好的CSS的情况下,用离子组件编写自定义组件的最佳方法是什么? 解决方法
你必须意识到Ionic正在使用SASS并针对多个平台.
当您创建< deletableItem>< / deletableItem>时你应该模仿离子团队用离子复选框做的事情,并创建你的Sass文件. 查看源文件夹here以获取< ion-checkbox>. 为deleteableItem定义自己的SASS. 此外,on the Ionic website you can find the various SASS component/platform variables. 我还提供了一个详细的相关解释,关于Ionic CSS classes assignment也可能对你有所帮助. 您还可以使用Chrome检查在Developer工具中查看ion-checkbox的类分配,并将它们与Ionic网站上的列表进行比较. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |