我开始从事一个使用 Backbone 和 Javascript 的项目。我不确定如何开始集成 Typescript。例如,我们在视图、模型、对象等之前有我们公司的命名空间。因此,在没有打字稿的情况下创建主干对象将如下所示:
Company.Views.MyNewView = (function () { return Backbone.View.extend({ } })();
所以现在,使用 Typescript,我想我可以做类似的事情
class Company.Views.MyNewView {
}
但是,Typescript 不喜欢名称中的句点。所以我的第一个问题是如何在我的项目中使用带有现有命名空间的 Typescript?这些命名空间被简单地定义为
var Company = Company || {};
Company.Views = Company.Views || {};
我的第二个问题更笼统。展望未来,Typescript 是否可以轻松地与使用标准 javascript 定义所有内容的现有项目集成?我不确定如何访问我的任何非 Typescript 类对象。提前致谢。
编辑:尝试与现有的 Javascript 对象集成
declare module Company.Views {
export class MyNewRouter extends Company.BaseRouter {
// It does not recognize Company.BaseRouter
}
}