Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tf63/ts-module-exp
https://github.com/tf63/ts-module-exp
Last synced: 24 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/tf63/ts-module-exp
- Owner: tf63
- Created: 2023-08-22T13:29:35.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-08-23T11:30:47.000Z (about 1 year ago)
- Last Synced: 2023-08-23T13:58:52.151Z (about 1 year ago)
- Language: TypeScript
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## TypeScript moduleのおためし
- ビルド済みパッケージのインストール -> `pkg/sample1`
- ビルドしてないパッケージのインストール -> `pkg/sample2`### パッケージ
**パッケージ**
- `package.json`があるディレクトリがパッケージルート**CJS or ESM**
### 設定
- `package.json`
```"name": "パッケージ名",
"type": "module", // or "commonjs"
"version": "1.0.0",
"description": "",
"devDependencies": {
"ts-node": "^10.9.1",
"typescript": "^5.1.6"
},
"scripts": {
"build": "tsc", // typescriptのビルド
"test": "echo \"Error: no test specified\" && exit 1"
},
"main": "dist/index.js", // エントリポイント
"types": "dist/index.d.ts",
```- `tsconfig.json`
```
{
"include": ["src/**/*.ts"], // ビルド対象
"exclude": ["node_modules"], // ビルド無視
"compilerOptions": {
"module": "ESNext", // or CommonJS
"target": "ESNext", // or ES6にしとく
"declaration": true,
"sourceMap": true,
"strict": true,
"outDir": "./dist", // ビルド先
"moduleResolution": "node",
"esModuleInterop": true
},
"ts-node": {
"esm": true,
"experimentalSpecifierResolution": "node"
}
}
```### build
- TypeScriptのビルド
```
tsc
```### ローカルパッケージのインストール
```
npm install
```### メモ
- `export default`したものは`index.ts`で再びexport出来ない