【问题标题】:require function parameter to implement multiple interfaces需要函数参数来实现多个接口
【发布时间】:2014-07-15 18:56:47
【问题描述】:

在打字稿中,是否有可能做类似的事情:

module module1 {
    export interface Foo {
        data1: string;
    }
    export interface Bar {
        data2: string;
    }
    export function foobar(data: Foo & Bar) {
        //do stuff
        data.data1; data.data2;
    }
}

即强制foobar的data参数同时实现Foo和Bar?如果是这样,正确的语法是什么?

谢谢。

【问题讨论】:

    标签: typescript


    【解决方案1】:

    你必须创建一个新的命名接口:

    module module1 {
        export interface Foo {
            data1: string;
        }
        export interface Bar {
            data2: string;
        }
        export interface FooAndBar extends Foo, Bar { }
        export function foobar(data: FooAndBar) {
            //do stuff
            data.data1; data.data2;
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-06
      • 1970-01-01
      • 1970-01-01
      • 2015-10-08
      相关资源
      最近更新 更多