![](/img/trans.png)
[英]What does the “target” property in tsconfig.json actually represent?
[英]does lib property overwrite target property in tsconfig.json
我是TypeScript的新手,以下是tsconfig.json文件中有關lib屬性和target屬性的一個問題:
{
"compilerOptions": {
"target": "es5",
"outDir": "./dist",
"rootDir": "./src",
"noEmitOnError": true,
}
}
//index.ts
console.log("Hello World");
所以效果很好
但是然后我想使用ES6 Map(),所以我將配置文件更改為:
{
"compilerOptions": {
"target": "es5",
"outDir": "./dist",
"rootDir": "./src",
"noEmitOnError": true,
"lib": ["es6"]
}
}
然后我得到一個錯誤:
找不到名稱“控制台”
以下是我的問題
Q1 es5,es6是否已經包含DOM API?
問題2-如果es5和es6不包含DOM API,沒有lib屬性,它如何第一次起作用?
也添加dom
庫-有關其他庫,請參見此處 :
"lib": ["dom", "es6"]
TypeScript具有基於您設置的target
lib
的默認值。
它們記錄在編譯器選項頁面上
(不幸的是,我無法直接鏈接到它,搜索--lib
可以跳轉到它)
DOM
, ES5
, ScriptHost
DOM
, ES6
, DOM.Iterable
, ScriptHost
因此,正如另一個答案所說,如果您手動指定lib
,則必須確保還包含所需的默認值:
"lib": ["dom", "es6"]
如果您想知道其中的某些庫包含什么,請查看lib
文件夾中TypeScript存儲庫中的文件本身。 例如ScriptHost
是lib.scripthost.d.ts
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.