在 Angular 2 Material 中将 md-cards 创建为链接

Creating md-cards as links in Angular 2 Material

在包含卡片的整个组件周围放置锚标记 ("[routerLink]") 会改变样式(创建 link class 以尝试禁用样式没有帮助)。

将卡片(在本例中为 md-card)动态创建为可点击的 link 的正确方法是什么?

换句话说,每张卡片都是可点击的,并且 link 可以看到不同的视图。

如果您不需要使用 routerLink,您可以使用点击事件并从组件内部导航。

示例组件:

import { Component, OnInit } from '@angular/core';
import {Router} from '@angular/router';

interface Thing{
    name:string;
    route:string;
}

@Component({
    selector: 'app-things',
    template: `
        <md-card *ngFor="let thing of things" (click)="navigate(thing)">
            Simple card
        </md-card>
    `
})
export class ThingsComponent implements OnInit {
    things: Thing[];

    constructor(
        private router: Router
    ) { 
        //todo initialize things
    }

    navigate(thing:Thing){
        this.router.navigate(thing.route);
    }
}