angular material (一)组件介绍

组件的文档API如下:

image.png
image.png

image.png

如果我们想使用谷歌的图片字体库的话 需要我们来设置360对于谷歌图片库的镜像,在index.html里面导入。
<link href="//lib.baomitu.com/material-design-icons/3.0.1/iconfont/material-icons.min.css" rel="stylesheet">
但是我们在使用图片库的时候需要注意 :
The <mat-icon> element should be a child of a <button> or <a> element.
上面的英文的意思是 <mat-icon> 必须要在 <button> or <a> 里面
并且 要在 <button> or <a> 声明属性 mat-icon-button
image.png

<button md-icon-button (click)="openSidebar()">
<md-icon>menu</md-icon>
</button>
与 mat-icon相同的设置字体图像 我们同时可以使用 设置 svg的方式来完成
给大家推荐一个矢量标签库。
http://www.iconfont.cn/
在矢量标签库的官网下载svg图片, 将下载的 svg 图片放到 assets 的文件夹下面,
在需要使用的组件中导入引用
import {MdIconRegistry} from "@angular/material";
import {DomSanitizer} from "@angular/platform-browser";
并注入到构造函数中,
image.png

image.png

并在 组件 html 模板 中设置 svg 图片
注意 使用到 svg 字体图库的时候 需要 添加 httpModule 模块。


image.png

上面的svg图片库的引用也有缺陷,缺陷就是 我们每一次使用到图片的时候都需要做类似上面的同样的设置,为了简化代码
我们创建一个工具类, svg.util.ts 并在其中写一个loadSvgResources方法调用整个的 svg 资源 。

image.png

同时 我们 在 core.modulle.ts 设置 svg 图片资源仅仅加载一次。
import {MdIconRegistry} from "@angular/material";
import {DomSanitizer} from "@angular/platform-browser";

//作用是在系统中只加载一次
export class CoreModule {
constructor(@Optional()@SkipSelf()parent:CoreModule
, ir:MdIconRegistry,ds:DomSanitizer ){
if(parent){
throw new Error('模块已经存在,不能重复加载');
}
loadSvgResources(ir,ds);
}
}

image.png

当我们的svg图片是一个 svg图片集合的时候,我们需要使用另一个方法加载svg图片
ir.addSvgIconSetInNamespace('avatars',ds.bypassSecurityTrustResourceUrl('assets/avatars.svg'));

image.png

this.items=nums.map(d=>avatars:svg-${d});
给 图片的 md-icon 设置 样式:
md-icon.avatars{
overflow: hidden;
width: 25px;
height: 25px;
border-radius: 50%;

}
md-card{
width: 20em;
flex: 0 0 20em;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • core package 概要:Core是所有其他包的基础包.它提供了大部分功能包括metadata,templa...
    LOVE小狼阅读 7,689评论 0 3
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,771评论 25 709
  • 原文链接:https://github.com/opendigg/awesome-github-android-u...
    IM魂影阅读 33,100评论 6 472
  • 一曲红尘断肠 一曲哀伤断肝 一曲愁思断喉 一曲离歌断心 只一曲, 曲引情绪 情绪变换不定 终指伤人
    雨林笔墨阅读 1,697评论 0 2
  • 1.6日精进:敬畏—进入—体验—交给—持续 1,缺啥补啥,怕啥练啥; 2,一切为我所用,所用为团队家; 3,我想...
    zhabei阅读 2,761评论 0 0

友情链接更多精彩内容