我已经将TS添加到我的React/Redux应用程序中。
我在应用程序中使用window对象,如下所示:
componentDidMount() {
let FB = window.FB;
}
TS抛出一个错误:
TypeScript错误:“窗口”类型上不存在属性“FB”。TS2339
我想纠正错误。
1(不起作用)
// Why doesn't this work? I have defined a type locally
type Window = {
FB: any
}
componentDidMount() {
let FB = window.FB;
我必须为我正在做的一个小项目编写Javascript。为此,我曾想过创建一个TypeScript项目并将其编译成一个Javascript文件,这样我的SDK的用户就可以将该文件插入到他们的网页中。
然而,我只是了解到,如果我使用import,并试图编译成一个文件,那么它只支持SystemJS。
那么,如何将TypeScript项目编译成单个JS文件,以便在浏览器中使用?
通过在浏览器中使用,我的意思是如果我在TypeScript中创建一个类TypeScript,那么我可以在dev控制台中这样做:
var x = new App();
我已经做了一个多小时了,我发现的一切似乎都表明这是不可能的。
我正在构建一个具有角的应用程序,并且最近切换到了TypeScript。我的应用程序的核心由多个实际类组成,它们相互交互(不仅仅是全局服务)。我这样做的方式如下:
class Person {
constructor(private $http, public name: string) {
// ... use this.$http for some task
}
}
class PersonFactory {
static $inject = ['$http'];
constructor(private $http) {}
在使用带有angularjs的typescript注入自定义服务时,我收到了这个错误。生成的typescript转译的JavaScript已通过uglify运行。当不使用uglify部署时,该应用程序可以正常工作。
Uncaught Error: [$injector:modulerr] Failed to instantiate module myApp due to:
Error: [$injector:modulerr] Failed to instantiate module MyModule due to:
Error: [$injector:unpr] Unknown provid
我有一个角服务(让我们称之为$superService),我在我的指令、控制器等中使用它。但我也有一个特定的指令,我希望有以下行为:如果我在这个特定的指令中放置任何其他指令,而指令在它们自己的控制器中使用$superService,我希望在那里注入$superService的另一个实例。让我举一个例子来说明我现在是如何做到的:
function SuperService(){
this.action = function(){
// some action
}
}
var module = angular.module('module');
mo