Angular Material 2的安装备忘录

版本(截止至2016年12月10日)

Angular 2.2
@angular/material@2.0.0-alpha.11-3

Angular 2.2
@angular/material@2.0.0-alpha.11-3

Angular Material 2的官方网页

以下的步骤是从官方网页上实际操作中摘录出来的。

引入步骤

按照官方页面的指示,进行安装等操作。

安装Angular CLI。

npm install -g angular-cli

通过这样的方式,你就可以使用ng命令了。

接下来,我们将创建本次开发项目的根文件夹。

ng new my-project

最后,进入根目录并在项目中安装Angular Material。

npm install --save @angular/material

创建Angular Material 2的样式

在src文件夹中的styles.css文件中,预先导入基本的预置样式。

@import '~@angular/material/core/theming/prebuilt/deeppurple-amber.css';
@import '~https://fonts.googleapis.com/icon?family=Material+Icons';

我有点随意地导入了图标。

在src文件夹内创建专门用于开发项目的Sass文件。(内容与官方页面一致)

@import '~@angular/material/core/theming/all-theme';
@include md-core();
$candy-app-primary: md-palette($md-indigo);
$candy-app-accent:  md-palette($md-pink, A200, A100, A400);
$candy-app-warn:    md-palette($md-red);
$candy-app-theme: md-light-theme($candy-app-primary, $candy-app-accent, $candy-app-warn);
@include angular-material-theme($candy-app-theme);

请选择您喜欢的颜色。
(参考)md-light-theme是一个存在于核心中的函数。

// Creates a container object for a light theme to be given to individual component theme mixins.
@function md-light-theme($primary, $accent, $warn: md-palette($md-red)) {
  @return (
    primary: $primary,
    accent: $accent,
    warn: $warn,
    is-dark: false,
    foreground: $md-light-theme-foreground,
    background: $md-light-theme-background,
  );
}

在angular-cli.json配置文件中添加文件名,以便能够使用angular-cli编译所创建的专用Sass文件。

      "styles": [
        "styles.css",
        "myapp-theme.scss"
      ],

相关文件/文件夹结构

angular-cli.json … 添加
src/styles.css … 添加
src/myapp-theme.scss … 新建
以上是对原文的中文同义转述。

额外的,
我们将使用ng命令创建包含组件/服务的文件夹。

部件

ng generate component xxxx

src/component/xxxx.component.css(如果需要可以更改为scss。详见后文)
src/component/xxxx.component.html
src/component/xxxx.component.ts
src/component/xxxx.component.spec.ts

服务

ng generate service xxxx

源代码/共享/xxxx.ts
源代码/共享/xxxx.spec.ts

如果创建了xxxx.component.scss

与『myapp-theme.scss』相同,将其添加到angular-cli.json中,以便通过cli执行编译。

      "styles": [
        "styles.css",
        "myapp-theme.scss",
        "app/xxx/xxxx.component.scss"
      ],

引入步骤(补充于2017年1月22日)

添加 HammerJS

如果使用本设置创建Web应用程序,则Web控制台可能会显示警告信息”找不到HammerJS。某些Angular Material组件可能无法正常工作。”。

在这种情况下,请手动安装HammerJS。

npm install --save hammerjs

我也将此信息添加到angular-cli.json中。

      "scripts": [
        "../node_modules/hammerjs/hammer.min.js"
      ],

使用这个选项后,警告消息将不再显示。

我参考了这个页面。

“结束”

广告
将在 10 秒后关闭
bannerAds