Typecsript覆盖来自外部库的readonly属性getter实现

时间:2018-01-20 14:51:09

标签: angular typescript angular-material2

我是Typescript和Angular的新手。我处于需要覆盖Material Design Library版本属性的情况:2.0.0-beta.12。我需要覆盖这个只读公共属性:

https://github.com/angular/material2/blob/2.0.0-beta.12/src/lib/chips/chip-list.ts#L242

我注意到他们有一个错误,实现应该是:

get shouldPlaceholderFloat(): boolean {
    return !this.empty;
}

所以我想纠正这个问题,而不是等待这个库的创建者解决这个问题。如何替换此属性getter的body / implementation。我需要快速做到这一点。有没有办法可以在使用此Material Design UI库的Angular项目中的Typescript中覆盖它。一般来说,我会问如何在导入的其他类中添加/更改属性/方法,我们直接不控制它们。什么是最好的方法?这是我的ng -v输出:

Angular CLI: 1.5.3
Node: 6.11.2
OS: darwin x64
Angular: 4.4.6
... animations, common, compiler, compiler-cli, core, forms
... http, platform-browser, platform-browser-dynamic
... platform-server, router, tsc-wrapped

@angular/cdk: 2.0.0-beta.12
@angular/cli: 1.5.3
@angular/flex-layout: 2.0.0-beta.8
@angular/material: 2.0.0-beta.12
@angular-devkit/build-optimizer: 0.0.33
@angular-devkit/core: 0.0.21
@angular-devkit/schematics: 0.0.37
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.8.3
@schematics/angular: 0.1.7
typescript: 2.3.4
webpack: 3.8.1

0 个答案:

没有答案