问题标签 [tsc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - TS2307:找不到模块“离子/离子”
尝试tsc
与我的 ionic2 项目一起使用时,我在打字稿文件上收到以下错误。
错误:
TS2307: Cannot find module 'ionic/ionic'
编码:
我的 tsconfig.json 文件:
我的 npm -g 列表:
javascript - tsc out 创建空的输出文件
我有一个简单的 hello world 文件test.ts
,其内容如下:
当我运行命令tsc test.ts --module amd --out bla.js
时,test.js
会创建一个包含正确内容的文件,但bla.js
也会创建一个空文件。
我希望test.ts
将bla.js
. 是什么导致了这种行为?
vim - 无法删除 leafgarland-vim TypeScript experimentalDecorator 警告
我安装了leafgarland-vim插件,当我保存.ts文件时,我总是收到以下警告:
我尝试添加let g:typescript_compiler_options="--experimentalDecorators"
到我的~/.vimrc中,并且在第一次输入“:”之后,我还从 vim 内部输入了该命令。我什至可以做到:echo g:typescript_compiler_options
,它会返回--experimentalDecorators
。然而,每次我去保存时,我都会收到这个错误。
我怎样才能让这个错误消失?--experimentalDecorators
只是似乎没有完成它的工作。
编辑:
我从 vim 内部尝试了这个:
:let g:typescript_compiler_options = '--dnwejuidbnwejudbn'
代码仍然编译,并带有相同的警告。我不认为let g:typescript_compiler_options实际上在做任何事情。
typescript - 使用全局 tsc 参数在 vscode 中设置构建任务
我们有以下项目结构
我们正在尝试在 VSCode 中配置一个任务,允许按照这个结构进行编译......
而且我们无法使其工作,因为没有--filesGlob参数,或任何其他传递正则表达式来编译许多文件的方式。任何其他允许此工作流程的方法?
typescript - VS Code:在保存文件时观看打字稿
在 Visual Studio Code 中,我在 tsconfig.json 的代码中有以下代码
如您所见,该watch
选项为真。好吧,看起来这还不足以像 atom-typescript 一样将 .ts 文件编译为 .js 。基本上,新编译的.js在保存.ts时应该在.ts文件的同一目录下。
另外,我想避免在我的根项目中使用 gulp,因为我已经将 gulpfile.coffee 用于其他方式。有人有线索吗?
reactjs - 如何将 Relay 查询从 TypeScript 转换为 ES5?
我正在用 TypeScript 编写一个网络应用程序。该应用程序使用 Facebook 的 React 和 Relay。我的 TypeScript 源代码使用 TypeScript 编译器 TSC 编译成 ES6 代码。然后,使用 Babel 将 ES6 代码转换为 ES5 代码。为了让 Relay 在浏览器中工作,Babel 插件需要转换 Relay GraphQL 查询:https ://facebook.github.io/relay/docs/guides-babel-plugin.html 。问题是,因为 TSC 首先转换这些查询,Babel Relay 插件不再识别它们,所以它们不会被转换成浏览器可以理解的东西,所以浏览器会抛出一个错误:
未捕获的不变违规:RelayQL:运行时意外调用。要么未设置 Babel 转换,要么未能识别此调用站点。确保它被逐字用作
Relay.QL
.
我的 TypeScript 源代码:
...这被 TSC 编译成这样的东西:
... 而不是这样的(因为 Babel Relay 插件无法正常工作):
这是因为 Babel Relay 插件无法识别转换后的版本,因此它不会将查询转换为浏览器可以理解的内容。
如何使这项工作?
typescript - 静音/忽略来自 TypeScript tsc 的 TS2307 错误
tsc
有没有办法从 TypeScript编译器中消除 TS2307 错误?
由于我们的代码库中有许多TS2307 错误,因此很难发现真正的/新的错误和警告。
更新:
当外部模块在import
其类型定义.d.ts
不存在的情况下被编辑时,会发生此错误。
我知道,tsd
但对于我们使用的许多库,不存在类型定义。
typescript - 让 typescript 编译器和 live-server 一起玩得很好?
我正在使用 Angular2 和 typescript,但我在开发过程中遇到了挫折。
我tsc -w
用来监视文件更改并立即编译。这可能需要 2 或 3 秒才能完成,因为它会编译所有引用已更改文件的文件。
我正在使用live-server . --ignorePattern=.*\.ts
这样实时服务器可以监视非 ts 文件更改并更新浏览器以反映更改。tsc
理想情况下,它应该在编译完成后强制浏览器更新。
最终发生的事情是,tsc
它将立即在更改时构建一个 .ts 文件并发出它的 .js 和 .js.map 文件。这将触发live-server
更新。然后tsc
将重新编译所有import
更改了 .ts 文件的文件并发出它们的所有 .js 和 .js.map 文件。这需要将近 2 秒的时间。之后live-server
再次刷新浏览器。
如果我将我的live-server
行更改为live-server . --wait=3000 --ignore-pattern=.*\.ts
then 它在 js 文件的第二次发射后等待 3 秒,这意味着它等待整整 5 秒(2 秒编译引用更改文件的文件 + 3 额外等待)如果如果背靠背进行了一系列小的更改。它会一直编译回我的boot.js
文件。
是否有任何tsc
选项/标志我可以用来只发出一次编译文件?我不想只发出一个 .js 文件,但我愿意接受其他解决方案。
typescript - 如何从 typescript jspm 项目创建类型化文件(d.ts)?
我用 TypeScript 编写 jspm 项目。它运行良好,生活愉快。
现在我想为我的模块创建一个d.ts
文件。
tsc -d
我的tsconfig.json
不起作用,因为tsc
无法从jspm
.
jspm
并且ts
( plugin-typescript
) 也没有该选项。
我应该怎么办?