我刚开始学习Angular 2,我有一个问题就是导入一个带接口声明的自定义模块。这是我的文件夹结构:
我想将product.interface.ts导入到app/components/product/product.component.ts
中包含此import语句的组件中:
import { IProduct, IEmvoProduct } from '../../interfaces/product.interface'
我也尝试过:
import { IProduct, IEmvoProduct } from '@app/interfaces/product.interface'
但它可以找到那个模块。
product.interface.ts
是:
interface IProduct {
productCode: string;
description: string;
lawId: number;
name: string;
comment: string;
emvoProduct?: IEmvoProduct; // ?: Optional.
}
interface IEmvoProduct {
codingScheme: string;
name: string;
commonName: string;
pharmaForm: string;
strength: string;
packType: string;
packSize: number;
}
我想将接口放在一个独立的文件中,以便在另一个组件之间共享。
如何导入它?
答案 0 :(得分:1)
这个很完美:
import { IProduct, IEmvoProduct } from '../../interfaces/product.interface'
我认为您忘记从IProduct
文件中导出IEmvoProduct
,product.interface.ts
。
错误:product.interface.ts
不是模块
在export
和interface IProduct
interface IEmvoProduct
关键字
喜欢:
export interface IProduct {
productCode: string;
description: string;
lawId: number;
name: string;
comment: string;
emvoProduct?: IEmvoProduct; // ?: Optional.
}
export interface IEmvoProduct {
codingScheme: string;
name: string;
commonName: string;
pharmaForm: string;
strength: string;
packType: string;
packSize: number;
}
这是链接,请看一下: