У меня проблемы с упаковкой моего проекта TypeScript , который я опубликовал в реестре npm . Я новичок в упаковке модулей для использования другими, так что я, вероятно, просто делаю что-то не так.
Это части пакета . json, которые кажутся актуальными:
{
"name": "robotnik-bot",
"version": "0.1.0-4",
"description": "Friendly neighborhood Discord bot",
"main": "out/index",
"types": "out/index.d.ts",
"typings:": "out/index.d.ts",
"scripts": {
"build": "tsc",
"test": "mocha -r ts-node/register tests/**/*.test.ts",
"coverage": "nyc -r lcov -e .ts -x \"*.test.ts\" npm run test",
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
"prepublish": "tsc"
},
И это tsconfig. json:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"outDir": "out",
"sourceRoot" : "src",
"sourceMap": true,
"declaration": true,
"resolveJsonModule": true,
"esModuleInterop": true,
"moduleResolution": "node",
"typeRoots": [
"node_modules/@types"
]
},
"exclude": [
"out",
"nodule_modules",
"tests"
],
"lib": ["es2015"],
}
В моем зависимом проекте я добавил пакет как зависимость и попытался использовать его:
"dependencies": {
"robotnik-bot": "^0.1.0-4"
},
"devDependencies": {
"typescript": "^3.8.2"
},
"scripts": {
"start" : "tsc && node dist/index.js"
}
import { Builder } from 'robotnik-bot';
const bot = new Builder().build();
Но зависимый проект не может найти модуль. Когда я проверяю nodue_modules
, кажется, что он только что упаковал файловую структуру моего проекта с исходниками TypeScript; не должно ли быть каких-то скомпилированных Javascript?