在寻找使用一个新的相当大的项目(Three.js)和教初学者时,我可以看到自动完成的吸引力。
然而,对于Atom来说,即使
atom-typescript
包,我没有找到关于如何设置它的非常明确的指导(我对TypeScript语法有一些熟悉,但我自己不习惯设置它)。我希望像JavaScript的类型感知自动补全这样有用的东西,可能会有一些针对这个用例的快速入门教程,但我还没有找到任何有助于让事情正常工作的东西。
根据
https://www.typescriptlang.org/docs/handbook/declaration-files/consumption.html
,我希望我能跑:
pnpm i -D @types/three
…(使用pnpm作为我的包管理器),然后添加导入(如果THREE全局值不是由
@types/three
包装):
import * as THREE from 'three';
我也跑了
pnpm i -D typescript
推测Atom可能想要访问本地副本。
添加a
jsconfig.json
使用以下内容(在根目录中与我的其他文件和
package.json
)没有帮助:
{
"compilerOptions": {
"lib": ["es2015", "dom"]
}
}
在
原子字体
我启用了“为JavaScript文件启用Atom TypeScript(实验性)”。我唯一的另一个名为“typescript”的包是“language typescript”(我已经禁用了“ide typescript”)。
即使我需要设置自己的声明文件,我不应该得到错误吗?
不过,添加我自己的声明文件似乎并没有改变任何事情。
threed.d.ts
:
declare module "threed" {
}
我预计至少会出现没有类型的错误,但不会得到任何东西。
我还添加了以下内容
~/.atom/init.coffee
文件按照
https://github.com/TypeStrong/atom-typescript/blob/master/docs/faq.md#i-want-to-use-atom-typescript-with-javascript-too
:
#CHANGE THE PACKAGE NAME IN THE NEXT LINE IF YOU'RE USING
#A DIFFERENT GRAMMAR PACKAGE
do (grammarPackageImUsing = "language-javascript") ->
atom.packages.onDidTriggerActivationHook "#{grammarPackageImUsing}:grammar-used", ->
atom.packages.triggerActivationHook 'language-typescript:grammar-used'
…并重新启动。
我还尝试了command-shift-P和
TypeScript: Activate
没什么。我错过了什么?