码迷,mamicode.com
首页 > 其他好文 > 详细

[TypeScript] Generating Definition Files

时间:2016-06-14 06:23:50      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:

TypeScript allows you to generate definition files for your own libraries. This lesson shows you how to organize your project and generate the definition files so that others projects can use your library with TypeScript.

 

If you‘re writing a library and you want to generate your own definition files, just make sure and add declaration to your tsconfig:

{
    "compilerOptions": {
        "rootDir": "src",
        "module": "commonjs",
        "target": "es5",
        "noImplicitAny": false,
        "sourceMap": false,
        "outDir": "./dist",
        "noEmitOnError": true,
        "experimentalDecorators": true,
        "emitDecoratorMetadata": true,
        "declaration": true
    },
    "exclude": [
        "node_modules",
        "typings/main",
        "typings/main.d.ts"
    ]
}

 

An error that will show up sometimes, it‘ll say you‘ll have a duplicate definition of app, so you want to make sure in your tsconfig you‘ve excluded dist, so that you avoid having these duplicate definitions.

{
    "compilerOptions": {
          ...
    },
    "exclude": [
        "node_modules",
        "dist",
        "typings/main",
        "typings/main.d.ts"
    ]
}

 

To let other people easily import your stuff, you can create a index.tx is dist:

// index.ts

export * from ./main;
export * from ./interfaces;

Export everythinig they need in index.ts file.

 

So they can do:

import  {App, Person, SocialNetwork} from ‘Your-Lib

 

For typings, in package.json:

"typings": "./dist/index.d.ts"

that way, when that package gets added to typing and someone loads it up, they‘ll get this index file, and then they‘ll have access to everything off of how we structured our library.

 

[TypeScript] Generating Definition Files

标签:

原文地址:http://www.cnblogs.com/Answer1215/p/5582616.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!