如何在项目中导入 Angular Material?

编程入门 行业动态 更新时间:2024-10-28 06:36:08
本文介绍了如何在项目中导入 Angular Material?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时送ChatGPT账号..

我已经安装了 Angular Material Design.现在我尝试将其添加到 app.module.ts 文件中:

import { MaterialModule } from '@angular/material';

我应该在部分确定什么:imports: []?加载所有材料实体.

我尝试过:imports: ['MaterialModule'] 但它已被弃用

解决方案

针对 Angular 9.0.1 的更新

从这个版本开始,根 index.d.ts 中没有大量导出的桶文件.资产导入应为:

import { NgModule } from '@angular/core';从'@angular/material/card' 导入 { MatCardModule };从'@angular/material/button' 导入 { MatButtonModule};从'@angular/material/menu' 导入 { MatMenuModule };从'@angular/material/toolbar' 导入 { MatToolbarModule };从'@angular/material/icon' 导入 { MatIconModule };进口 {垫按钮模块,垫菜单模块,垫工具栏模块,MatIcon模块,垫卡模块来自'@angular/material';@NgModule({进口:[垫按钮模块,垫菜单模块,垫工具栏模块,MatIcon模块,垫卡模块],出口:[垫按钮模块,垫菜单模块,垫工具栏模块,MatIcon模块,垫卡模块]})导出类 MaterialModule {}

来源:@angular/material/index.d.ts' 不是模块

<小时>

MaterialModule 已在 2.0.0-beta.3 版本中贬值,并已在 2.0.0-beta.11 版本中完全删除.有关更多详细信息,请参阅此 CHANGELOG.请完成重大更改.

重大变化

Angular Material 现在需要 Angular 4.4.3 或更高版本MaterialModule 已被删除.对于 beta.11,我们已决定弃用md" 前缀完全并使用垫子"向前推进.

请通过 CHANGELOG 我们会得到更多答案!>

示例如下命令

npm install --save @angular/material @angular/animations @angular/cdknpm install --save angular/material2-builds angular/cdk-builds

在'app'文件夹内创建文件(material.module.ts)

import { NgModule } from '@angular/core';进口 {垫按钮模块,垫菜单模块,垫工具栏模块,MatIcon模块,垫卡模块来自'@angular/material';@NgModule({进口:[垫按钮模块,垫菜单模块,垫工具栏模块,MatIcon模块,垫卡模块],出口:[垫按钮模块,垫菜单模块,垫工具栏模块,MatIcon模块,垫卡模块]})导出类 MaterialModule {}

在 app.module.ts 上导入

import { MaterialModule } from './material.module';

您的组件 html 文件

<mat-toolbar color="primary"><span><mat-icon>心情</mat-icon></span><span>是的,Angular 2 中的材料!</span><button mat-icon-button [mat-menu-trigger-for]="menu"><mat-icon>more_vert</mat-icon></mat-toolbar><mat-menu x-position="before" #menu="matMenu"><button mat-menu-item>选项1</button><button mat-menu-item>选项2</button></mat-menu><垫卡><button mat-button>All</button><button mat-raised-button>的</button><button mat-raised-button color="primary"></button><button mat-raised-button color="accent">按钮</button></mat-card><span class="done"><button mat-fab><mat-icon>勾号</mat-icon></span>

添加全局 css 'style.css'

@import 'https://fonts.googleapis/icon?family=Material+Icons';@import '~@angular/material/prebuilt-themes/indigo-pink.css';

你的组件 css

body {边距:0;字体系列:Roboto,无衬线;}垫卡{最大宽度:80%;保证金:2em 自动;文本对齐:居中;}垫工具栏行{对齐内容:间隔;}.完毕 {位置:固定;底部:20px;右:20px;白颜色;}

如果没有得到输出,请使用下面的说明

代替上面的接口(material.module.ts)你也可以直接在app.module.ts中使用下面的代码.

import { FormsModule, ReactiveFormsModule } from '@angular/forms';从@angular/platform-b​​rowser/animations"导入 { BrowserAnimationsModule };import { MdButtonModule, MdCardModule, MdMenuModule, MdToolbarModule, MdIconModule, MatAutocompleteModule, MatInputModule,MatFormFieldModule } from '@angular/material';

所以这种情况下你不想导入

import { MaterialModule } from './material.module';

在 app.module.ts 中

I have installed Angular Material Design. Now I try to add this in app.module.ts file:

import { MaterialModule } from '@angular/material';

What I should decify in section: imports: []? that to load all material entities.

I tried: imports: ['MaterialModule'] but it is deprecated

解决方案

UPDATE for Angular 9.0.1

Since this version there is no barrel file for massive exports in the root index.d.ts. The assets imports should be:

import { NgModule } from '@angular/core';
import { MatCardModule } from '@angular/material/card';
import { MatButtonModule} from '@angular/material/button';
import { MatMenuModule } from '@angular/material/menu';
import { MatToolbarModule } from '@angular/material/toolbar';
import { MatIconModule } from '@angular/material/icon';

import {
  MatButtonModule,
  MatMenuModule,
  MatToolbarModule,
  MatIconModule,
  MatCardModule
} from '@angular/material';

@NgModule({
  imports: [
    MatButtonModule,
    MatMenuModule,
    MatToolbarModule,
    MatIconModule,
    MatCardModule
  ],
  exports: [
    MatButtonModule,
    MatMenuModule,
    MatToolbarModule,
    MatIconModule,
    MatCardModule
  ]
})
export class MaterialModule {}

source: @angular/material/index.d.ts' is not a module


MaterialModule was depreciated in version 2.0.0-beta.3 and it has been removed completely in version 2.0.0-beta.11. See this CHANGELOG for more details. Please go through the breaking changes.

Breaking changes

Angular Material now requires Angular 4.4.3 or greater MaterialModule has been removed. For beta.11, we've made the decision to deprecate the "md" prefix completely and use "mat" moving forward.

Please go through CHANGELOG we will get more answer!

Example shown below cmd

npm install --save @angular/material @angular/animations @angular/cdk
npm install --save angular/material2-builds angular/cdk-builds

Create file (material.module.ts) inside the 'app' folder

import { NgModule } from '@angular/core';

import {
  MatButtonModule,
  MatMenuModule,
  MatToolbarModule,
  MatIconModule,
  MatCardModule
} from '@angular/material';

@NgModule({
  imports: [
    MatButtonModule,
    MatMenuModule,
    MatToolbarModule,
    MatIconModule,
    MatCardModule
  ],
  exports: [
    MatButtonModule,
    MatMenuModule,
    MatToolbarModule,
    MatIconModule,
    MatCardModule
  ]
})
export class MaterialModule {}

import on app.module.ts

import { MaterialModule } from './material.module';

Your component html file

<div>
  <mat-toolbar color="primary">
    <span><mat-icon>mood</mat-icon></span>

    <span>Yay, Material in Angular 2!</span>

    <button mat-icon-button [mat-menu-trigger-for]="menu">
      <mat-icon>more_vert</mat-icon>
    </button>
  </mat-toolbar>
  <mat-menu x-position="before" #menu="matMenu">
    <button mat-menu-item>Option 1</button>
    <button mat-menu-item>Option 2</button>
  </mat-menu>

  <mat-card>
    <button mat-button>All</button>
    <button mat-raised-button>Of</button>
    <button mat-raised-button color="primary">The</button>
    <button mat-raised-button color="accent">Buttons</button>
  </mat-card>

  <span class="done">
    <button mat-fab>
      <mat-icon>check circle</mat-icon>
    </button>
  </span>
</div>

Add global css 'style.css'

@import 'https://fonts.googleapis/icon?family=Material+Icons';
@import '~@angular/material/prebuilt-themes/indigo-pink.css'; 

Your component css

body {
  margin: 0;
  font-family: Roboto, sans-serif;
}

mat-card {
  max-width: 80%;
  margin: 2em auto;
  text-align: center;
}

mat-toolbar-row {
  justify-content: space-between;
}

.done {
  position: fixed;
  bottom: 20px;
  right: 20px;
  color: white;
}

If any one didn't get output use below instruction

instead of above interface (material.module.ts) u can directly use below code also in the app.module.ts.

import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { MdButtonModule, MdCardModule, MdMenuModule, MdToolbarModule, MdIconModule, MatAutocompleteModule, MatInputModule,MatFormFieldModule } from '@angular/material';

So this case u don't want to import

import { MaterialModule } from './material.module';

in the app.module.ts

这篇关于如何在项目中导入 Angular Material?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

更多推荐

[db:关键词]

本文发布于:2023-04-21 14:40:22,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1004778.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:项目   如何在   Material   Angular

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!