Проблема
Когда я запускаю nodemon с npm run start , я получаю Ошибка: не удается найти модуль 'Test' , иКогда я собираю файлы с npm, запускаю build и запускаю ./dist/index.js, я получаю ту же ошибку.
Как вы можете видеть, требуемый путь в . /dist / index.js не распознается должным образом.
Я не знаю, какую конфигурацию необходимо изменить, поэтому я задал вопрос.
Если вы знаете об этом, пожалуйста, ответьте обратномне с твоим ответом.Спасибо:)
Исходный код
. / Src / index.ts
import Test from 'Test';
const test = new Test();
. / Src / Test / index.ts
export default class Test {
constructor () {
console.log('Test');
}
}
. / Dist / index.js
"use strict";
var _Test = _interopRequireDefault(require("Test"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var test = new _Test.default();
. / Package.json
{
"version": "1.0.0",
"description": "",
"scripts": {
"build": "babel ./src --extensions .ts,.js --out-dir ./dist",
"start": "nodemon ./src --exec babel-node --extensions .ts,.js"
},
"author": "",
"license": "ISC",
"devDependencies": {
"@babel/cli": "^7.0.0-beta.47",
"@babel/core": "^7.0.0-beta.47",
"@babel/node": "^7.0.0-beta.47",
"@babel/plugin-proposal-class-properties": "^7.0.0-beta.47",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0-beta.47",
"@babel/polyfill": "^7.0.0-beta.47",
"@babel/preset-env": "^7.0.0-beta.47",
"@babel/preset-typescript": "^7.0.0-beta.47",
"cross-env": "^5.1.5",
"nodemon": "^1.17.4"
}
}
. / Tsconfig.json
{
"compilerOptions": {
"allowJs": true,
"allowSyntheticDefaultImports": true,
"baseUrl": ".",
"experimentalDecorators": true,
"forceConsistentCasingInFileNames": true,
"lib": ["ES2015", "ES2017", "DOM"],
"noEmit": true,
"noImplicitAny": true,
"noImplicitReturns": true,
"noImplicitThis": true,
"module": "esnext",
"moduleResolution": "node",
"paths": { "*":["node_modules/*", "src/*"] },
"pretty": true,
"strictNullChecks": true,
"target": "es5",
"typeRoots": ["./node_modules/@types"]
}
}
. /. babelrc
{
presets: ['@babel/preset-env', '@babel/preset-typescript'],
plugins: ['@babel/plugin-proposal-class-properties', '@babel/plugin-proposal-object-rest-spread']
}