[英]How to import a TypeScript file as a library?
因此,我創建了一個名為 methlib 的個人“庫”,並將其作為 .ts 文件存儲在我的計算機上。 它里面有大量的類、接口、函數等,我使用了一堆,我喜歡放在一個地方。 現在我的問題是我想在另一個項目中使用我在 typescript 中制作的功能和東西(就像人們通常想要使用庫一樣),但我不知道如何。 在我將它翻譯成 typescript 之前,我可以將它包含在 HTML 文件中(通常只需進入我的主 web 目錄並獲取本地文件,以便我現在進行任何更改以使其立即生效)不知道該怎么辦。 我對任何術語也不太熟悉(完全),而且我對 typescript 和更高級的 javascript 或 web 開發完全不熟悉。 現在,當我嘗試從我的圖書館中獲取一些東西時,例如
import { Collider } from "Methlib/methlib"
使用我的 webpack 配置(我主要從模板中偷來並且不完全理解)設置為
const path = require('path');
module.exports = {
entry: "./src/script.ts",
output: {
filename: "bundle.js",
path: path.resolve(__dirname, 'dist')
},
resolve: {
extensions: [".webpack.js", ".web.js", ".ts", ".js"],
alias: {
Methlib: "./../Methlib-js/"
}
},
module: {
rules: [{ test: /\.ts$/, loader: "ts-loader" }]
}
}
具有類似的文件結構
<root>
| Methlib-js
| | methlib.ts
| <project folder>
| | node_modules
| | src
| | | script.ts
| | webpack.config.js
| | package.json
| | package-lock.json
運行>node_modules\.bin\webpack
給了我
ERROR in <root>\<project folder>\src\script.ts
./src/script.ts
[tsl] ERROR in <root>\<project folder>\src\script.ts(5,26)
TS2307: Cannot find module 'Methlib/methlib' or its corresponding type declarations.
另外請注意整個事情,這只是為了讓我不必在不完全必要的地方透露我的確切文件結構。 我想澄清這實際上不是項目的一部分,只是我的文件結構的根。
解決方案是在 webpack.config.js 文件中指定庫的完整絕對路徑,經過進一步測試,您似乎甚至不需要在 tsconfig.json 文件中包含路徑映射。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.