reactjs - Jeg kan ikke importere mitt publiserte TypeScript-bibliotek, med denne feilen: "Module not found: Can't resolve 'tqt' i ..."
Jeg publiserte en død-enkel TypeScript-modul ved å bruke denne veiledningen, og den installeres via
npm install --save [email
Når jeg prøver å bruke det i et program, får jeg dette:
Module not found: Can't resolve 'tqt' in '/home/akiva/Programming/frogcast/src'
fra dette:
import React from "react";
import { CA_PoliticalParty } from "tqt";
console.log(CA_PoliticalParty); // Anything that invokes this will error.
class App extends React.Component
{
constructor() {
super("");
}
render() { return ( <div> </div> )};
};
export default App;
Med den relevante koden som ble publisert som dette:
TQt.ts
// Canadian Enumerators
export enum CA_PoliticalParty {
// Canadian Major National Political Parties
None= "None",
CPC = "CPC",
GPC = "GPC",
LPC = "LPC",
NDP = "NDP",
PPC = "PPC",
}
index.ts
export {CA_PoliticalParty} from './TQt'
package.json
{
"name": "tqt",
"version": "1.0.0",
"description": "Typescript Namespaces and Enums",
"main": "index.js",
"types": "dist/index.d.ts",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "Akiva Avraham <[email >",
"license": "GPL-2.0",
"repository": {
"type": "git",
"url": "git+ssh://[email /tqt"
},
"devDependencies": {
"typescript": "^3.6.4"
}
}
tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"declaration": true,
"outDir": "./dist",
"lib": ["es5","es6","dom"]
},
"include": [
"src/**/*"
]
}
Er det noe åpenbart jeg går glipp av her? Jeg lekte bare litt med innstillingene på svært små måter uten noen endringer, og jeg fulgte veiledningen nøyaktig som den er lagt opp.
Svar #1
Problemet er at TypeScript outDir ikke samsvarer med package.json main. For din spesifikke oppsett vil det fungere hvis du endrer main til dist/index.js (som er parallelt med det du gjorde riktig for types.)
