在同一项目上使用咖啡脚本和打字稿
Using both coffeescript and typescript on the same project
我实际上正在尝试在同一项目中同时使用coffeescript和typescript。
事实上,我希望能够在编码时选择我更喜欢哪一个。
事实是,由 typescript 生成的 javascript 似乎与使用 coffeescript 生成的 javascript 无法按预期工作
解释:
我用咖啡脚本编写了一个控制器类,当我在咖啡脚本文件中扩展它时,它可以完美运行,如下所示:
Controller = require('../node_modules/Controller/Controller')
class HelloController extends Controller
indexAction: (name) =>
console.log 'hey '+ name
module.exports = HelloController
但是当我尝试将其与打字稿一起使用时,如下所示:
import Controller = require('../node_modules/Controller/Controller');
export class HelloController extends Controller {
constructor() {
super()
}
indexAction(name:String) {
console.log('hey '+name);
}
}
我收到一个错误,告诉我在预期的位置找不到控制器(.js文件生成良好)
你可以帮我吗?
如果要执行此操作,则需要提供有关 Coffeescript 生成的 JavaScript 文件的类型信息。
如果添加Controller.d.ts
则可以描述控制器文件中的类型,以便 TypeScript 可以在编译期间应用该类型信息。
例如:
declare class Controller {
protected name: string;
//... more type information
}
export = Controller;
当然,你基本上是在编写JavaScript或Coffeescript,然后在另一个文件中写入类型信息,所以你可能想在每个单元的基础上决定你要用什么来编写程序。例如,如果你在 Coffeescript 中编写一个工具包,很容易为它编写一个.d.ts
文件 - 而如果你在 Coffeescript 中到处编写一个文件,你将遇到一些维护噩梦(要么创建大量.d.ts
文件,要么在每次更改其中一个部分时管理一个合并文件)。
定义文件最适合稳定的 API。
相关文章:
- 如果其他是咖啡脚本
- 咖啡脚本意外换行符
- 咖啡脚本意外的条件评估
- Wing IDE 中咖啡脚本的语法突出显示
- 如何在咖啡脚本中识别提交按钮,Rails 3应用程序
- 从函数(咖啡脚本)内以定时间隔触发函数
- 带有全局变量、咖啡脚本和回调的模块 CSV
- Chome和Firefox阻止修改派生类'咖啡脚本中的原型
- 为什么这个咖啡脚本没有编译“;正确”;
- 咖啡脚本中的回调
- 我的基于节点的咖啡脚本未运行(错误%1不是有效的应用程序.)
- 咖啡脚本和浏览器缓存
- 如何将一行咖啡脚本代码转换为多行
- 咖啡脚本数组查找下一个位置
- 咖啡脚本一行,用于创建带有变量键的哈希图
- 使用表单输入中的咖啡脚本编辑保存的值
- 咖啡脚本中的嵌套方法
- 咖啡脚本化的 ajax 调用结果在实际成功时失败回调
- 在同一项目上使用咖啡脚本和打字稿
- 咖啡脚本、类和函数