Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can i export a class to module and import the same in another module in typescript with angular

Tags:

I have a class(IGeneric) which is exported to the module A and I imported that Module(A) in module B, but I could not use that exported class(IGeneric) in the module B.

Note : that exported class is not a component,directive and service.it is a plain typescript class

Any help will be appreciated, thanks in advance. The class which I am trying to export

export class IGeneric{
header : any[];
content : [{
   lable :any,
   value :any
}]
}
like image 944
praveen Avatar asked Apr 26 '17 10:04

praveen


2 Answers

There is a trick to hide the details within a module by barrel files, via which you can

  • just introduce the barrel file (normally named as index.ts) to that module, and
  • export everything you intend to export in that barrel file, and then
  • import the module path whenever you try to use the exported class/interface or components;

As a follow-up, there is an another answer to elaborate what you can achieve by using barrel files.

like image 165
Hearen Avatar answered Sep 21 '22 11:09

Hearen


This looks like an ES6/Typescript module import/export issue rather than an issue for (the completely different and separate) NgModule system. If this is the case, then you simply need to import the class you want from the file you want at the top of the .ts file, e.g.:

import { IGeneric } from './relative/path/to/definition';

and then use the class as you would normally in a component/service etc

public generic: IGeneric;
like image 28
danimal Avatar answered Sep 22 '22 11:09

danimal