#javascript #node.js #typescript #npm #npm-install
#javascript #node.js #typescript #npm #npm-install
Вопрос:
Мой файл package.json
{
"name": "ts-logger",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"scripts": {
"install": "tsc"
},
"repository": {
"type": "git",
"url": "https://github.com/vkrenta/ts-logger.git"
},
"devDependencies": {
"typescript": "^4.0.2",
"@types/node": "^14.6.4"
},
"dependencies": {}
...
}
Мой tsconfig.json
{
"compilerOptions": {
...
"outDir": "./dist",
"target": "es5",
...
"rootDir": "./"
},
"exclude": ["node_modules", "dist"]
}
Я попытался отправить его на github и запустить npm link
.
После того, как я создал другой проект npm, затем после require('ts-logger')
или import {Logger} from 'ts-logger'
и node .
я получаю журналы, в которых npm не может разрешить модуль
Ответ №1:
Проблема была в package.json — я просто поменял местами devDependencies
и dependencies
, потому что typescript — это зависимость, которая компилирует код из git в папку dist.
"dependencies": {
"typescript": "^4.0.2",
"@types/node": "^14.6.4"
},
"devDependencies": {}
UPD
Также я инициировал свой tsconfig.json в пакете с "target":"es5"
, но новый проект с "target":"es2015"
. Таким образом, это означает, что ваш целевой пакет должен быть более новым (или таким же), чем target в вашем проекте (лучше всего "target":"ESNext"
).).