我是NativeScript的新手,VSCode的新手和TypeScript定義的新手,並且在安裝VSCode時需要通過智能感知執行自動完成以獲取tns-core-模塊。用於NativeScript的VSCode IntelliSense無法找到模塊'ui/frame'
從我的package.json的依賴:
"dependencies": {
"lodash": "^4.17.4",
"nativescript-theme-core": "1.0.4",
"tns-core-modules": "3.2.0"
}
智能感知lodash完美的作品如預期。但是,對於來自tns-core-modules的任何內容的智能感知不起作用。
我從NativeScript的Sidekick中的空白模板創建了一個項目。圍繞谷歌搜索後,我加入了jsconfig.json如下:
{
"compilerOptions": {
"checkJs": true,
"target": "ES6",
"allowSyntheticDefaultImports": true
},
"include": [
"app/**/*"
]
}
CheckJS表明我這個錯誤在家庭page.js
盤旋在它讀取錯誤:
[js] Cannot find module 'ui/frame'.
我試圖做各種事情,我老實說,只是不明白像:
/// <reference path="../../node_modules/tns-core-modules/tns-core-modules.d.ts" />
/// <reference path="../../node_modules/tns-core-modules/ui/frame/frame.d.ts"/>
我的理解是,由於「UI /幀」是不是在的package.json,但nativeScript智能提取從TNS核心模塊的相應模塊基於什麼平臺它的建設...
最大的問題是:你如何讓VSCode知道正確的映射,並在ui/frame和適當的「frame.d.ts」之間建立連接。
在此先感謝!
編輯: 我想更新任何讀者,讓他們知道我不是也不想編寫TypeScript代碼,但我希望VSCode能正確解釋打印稿定義。
會在ui/frame工作之前預先添加tns-core-modules嗎? – pkanev
@pkanev沒有不幸的。我試過了,如果我對本地文字的理解是對的,那就沒有道理了。另外,如果你看看frame.d.ts,它實際上定義了模塊'ui/frame'。但是,我真的不知道打字稿。 –
運行時檢查'ui/frame'是否是內置(tns-core-modules)模塊,然後繼續查看已安裝的node_modules。預先考慮'tns-core-modules'只會解析爲node_modules/tns-core-modules,所以沒有錯。 – pkanev