问题标签 [typescript1.6]
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 - TypeScript,声明变量与声明模块
TL;博士
在打字稿中声明变量是什么意思?例如(来自 TypeScript 手册或 wiki):
声明 var d3: D3.Base;
在这种情况下的目的是什么?
更多想法:
我知道声明一个模块或命名空间表明它是环境的,即它没有编译成 JavaScript,仅用于描述对象的形状(类型检查)。但是,变量声明的目的使我难以理解。
当我从绝对类型(angular.d.ts)查看角度声明文件时,问题出现了:
我正在努力弄清楚“导入”和变量声明到底发生了什么。Visual Studio Code 似乎不喜欢导入,但 Visual Studio 2015 接受它(两者都使用 TypeScript 1.6.2)。
sharepoint - 在 SharePoint 2013 中使用 TypeScript
我正在一步一步地关注这篇文章 [ http://www.itunity.com/article/typescript-sharepoint-2013-app-1290][1]
我无法让我的“app.ts”文件编译为“app.js”文件。我以管理员身份登录并启用了“自动编译 TypeScript”文件,这些文件不属于 Visual Studio 2013 中的项目。
当我构建和/或部署时,我无法生成“app.js”文件。
typescript - tsconfig.json 中的 gulp-typescript 和 outFile 选项
我正在使用 gulpfile.js 以这种方式编译我的 tsconfig.json 项目:
它工作正常并编译我的打字稿文件并将 js 文件放入 wwwroot/app 文件夹
问题出现了,然后我希望 TypeScript 编译器使用 outFile 属性输出单个连接文件
gulp 任务确实会创建一个空的输出文件并创建 *.js 文件,其中的内容位于 *.ts 文件旁边。
我应该修复什么来创建所需的输出文件而不污染我的源文件夹?
typescript - 为什么 TypeScript 编译器不允许返回类的实例
下面是一个例子来说明一个问题:
首先,我有一个 React 的 Typescript 定义,其中我们有一个组件的定义:
然后在应用程序中,我创建了扩展组件的类。
我想要一个返回组件实例的函数。
Typescript 编译器不允许我这样做。错误是:
“typeof App”类型中缺少属性“setState”
我不明白,因为类应该从 Component 继承一切。
reference - TypeScript 编译器不使用 tsconfig.json?
我是 TypeScript 的新手。我正在尝试在 WebStorm 中设置它的使用。我在项目的根目录中创建了一个 tsconfig.json 文件,并将内置的 ts 编译器更改为 1.6.2 版本。我仍然需要在每个 ts 文件中包含参考路径。我希望一旦我定义了 tsconfig.json 文件就不再需要它了。
我试图隔离问题并在 WebStorm 之外进行测试。问题依然存在。这是我的设置:我使用“npm install -g typescript”安装了 TypeScript。我创建了一个具有这种结构的文件夹:
file2.ts 使用在 file1.ts 中创建的类。
当我在 src 文件夹中运行“tsc file2.ts”时,我得到:
我需要做什么才能让编译器自动找到所有 ts 文件?
文件1.ts:
文件2.ts:
结果:
我把所有东西都放在一个 zip 里: https ://www.dropbox.com/s/o4x52rddanhjqnr/tsconfig.zip?dl=0
javascript - 带有 Rx 的打字稿 - 未找到 count() 函数异常
我正在使用 Typescript,使用 Reactive 编写 Angular2 应用程序。我不知道为什么,但是当我尝试调用.count()
Rx observable 时,我得到异常“计数不是函数”。智能感知显示这.count()
是一个函数,查看 Rx 源,我看到了函数。下面是一些引发异常的代码:
TypeError:y.count 不是函数
typescript - 推断对象键的类型
是否可以在 TypeScript 中声明一个结构,以便推断function
分配给error
键的类型?jQuery.ajax
如果有人试图分配错误的函数签名,我们可以报告类型不匹配。
typescript - “export = class”的不同行为
我正在编写一个只需要导出一个类的外部模块(使用 AMD)。我想简单地将其导入为import MyClass = require('./MyClass')
,因此在 MyClass 模块中我使用“export =”语法:
这编译没有错误并产生合理的 JS 代码:
接下来,我尝试导入它:
编译它在“var my: MyClass”处出现错误:“TS2304:找不到名称'MyClass'”。
但是,当我将模块导出更改为:
一切正常,但是生成的 JS 代码似乎几乎相同:
据我所知,唯一的区别是,它在返回之前使用了临时变量,这在这个闭包之外没有任何影响。
那么有什么区别以及为什么在第一种情况下出现 TS2304 错误?两种情况不应该一样吗?
typescript - 如何使用创建类的实例而不导入它
我使用 import 语句在我的 TypeScript 应用程序中导入大多数类:
但是,我发现了一些可以执行此操作的示例代码:
但是,微风不会在任何地方导入。
我不明白它是如何工作的。微风有一个 .d.ts 文件,但我在项目中的任何地方都看不到它被导入的任何地方。Visual Studio 将“breeze”识别为命名空间,将 EntityManager 识别为类。我相信它是直接从 TDF 获得的。
该类也未导出。我认为它必须导出:
不必使用导入/导出语句似乎要简单得多,但我不明白这是如何实现的。
javascript - 找不到带有 ES6 样式导入的模块“hbs”
我在 TypeScript 中这样做,但在 vanilla JS 中也尝试过同样的错误。我已经删除了两个模块:express和hbs。我正在尝试import
像这样使用 ES6 语法:
最后一行给了我一个错误,说它找不到模块hbs。我正在看它...我可以看到它很好。但是,当我用旧的 CommonJS 语法替换该行时:
它工作正常......什么给了?仍然在 ES6 的学习曲线上......