问题标签 [typescript2.2]

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.

0 投票
0 回答
99 浏览

node.js - 我们如何访问 HTML 中的组件模块?

我们可以使用它的选择器在 Angular 中动态加载一个组件吗?我需要从 HTML 访问组件模块

HTML

在 Angular 2 中使用 selector 动态跟踪 Load 组件,这会引发以下错误:

0 投票
1 回答
446 浏览

javascript - 将 Typescript 2.3 模块发布到 NPM 以供 Angular 4 使用

在 Typescript 中编写 NPM 模块中有相关说明,但是它已经过时了,现在有很多不同的答案可能适用于 Angular,也可能不适用于 Angular。Jason Aden 在youtube上也有一个关于如何发布 Angular 组件的非常好的演示文稿,但在这种情况下,我只对发布 vanilla typescript 类感兴趣。

0 投票
1 回答
5426 浏览

typescript - 用大括号括起来的打字稿返回值?

在以下代码块heros中用花括号括起来:

特别是这个原因?

0 投票
1 回答
354 浏览

arrays - 将数组传递给异步库 eachSeries - 需要 'Dictionary<{}>'

我有以下打字稿代码:

这将转换为警告:

ITestSuite[] 类型的参数不可分配给 Dictionary<{}> 类型的参数。ITestSuite[] 中缺少索引签名。

怎么修?

这是确切的警告:在此处输入图像描述

0 投票
3 回答
11208 浏览

javascript - 打字稿错误:“HTMLElement”类型上不存在属性“附加”

问题:

尝试将已编译的 angular 1.5 模板附加到现有的HTMLElement.

代码:

编译错误:

我已经搜索了类型定义,但没有看到append().

关于我应该使用哪种类型或版本的打字稿有什么想法吗?

谢谢!

0 投票
0 回答
78 浏览

typescript - 升级到 VS2017 后无法从接口引用类

当它们引用同一模块中的类但位于不同文件中时,我会Cannot find name 'x'进入打字稿接口文件。

例子:

MyClass.ts

我的界面.d.ts

这显示Cannot find name 'MyClass',但是它以蓝色突出显示,好像它知道它是什么。VS 成功构建,但是错误显示在错误窗口中。在从 VS2015 升级之前,这曾经很好。我究竟做错了什么?

0 投票
1 回答
55 浏览

angular - 如何使用 @Self() 装饰器导出组件的大小?

我正在研究一种计算和设置 CSS 网格布局的机制。这样做的一部分要求我的组件能够以像素为单位检测它们自己的大小。到目前为止,我遇到了@Self()装饰器,但现在我实际上正在使用它,我无法弄清楚如何从中获取有关组件的任何信息。

我创建了一个名为的类GridFactory,我用它来扩展我的组件类,这使得试图弄清楚如何superconstructor. 到目前为止,我的班级看起来像这样。

到目前为止,我只是想在app.component我这样设置的那个上调用它

截至目前,我收到有关appScpecs变量的此错误

TS2304:找不到名称“appSpecs”。

我一直在查找我能想到的所有内容以查找有关此装饰器的更多信息,但我还没有找到任何东西。谁能帮我解决这个问题?

更新

我把功能改成了这个

我还决定创建一个包含所有内容的组件类,只是为了将它们全部放在一个地方,直到我弄清楚如何让它工作。我没有收到任何错误,但结果出现null在我的屏幕和undefined控制台上。

0 投票
2 回答
1049 浏览

angular - 扩展类时如何防止@HostListeners 相互覆盖?

我正在构建一个类来扩展我所有的组件来监听像这样的调整事件

在其他组件中,我监听相同的事件,当类扩展时,这会导致一个事件覆盖另一个事件,因此只有一个在窗口大小发生变化时触发。我发现这是问题所在,因为我有一门大课,我不评论要在一个地方修补所有东西。当我将此添加到课程中时

我收到一个错误,指出存在重复,这解释了为什么它们在扩展时会相互覆盖。我给这些函数起不同的名字,看看是否有帮助,我认为第二个是占主导地位的函数。@HostListener但是最后只有一个

它们都按需要运行。

我该如何解决这个问题?到目前为止,这是我的课程。

AppComponent

GridFactory

AppComponent (both combined as one class)

0 投票
1 回答
10707 浏览

visual-studio - 如何将 TypeScript 2.2 安装到 Visual Studio 2017

我们团队中的一些人同时安装了 Visual Studio 2015 和 Visual Studio 2017。其他的只有最新的 Visual Studio 2017 (15.5)。对于后者,我们注意到由于各种 lib.es2015.d.ts 问题,IDE 中的 TypeScript 项目正在生成各种意外错误。

我们的项目使用 TypeScript 2.2,而最新的 Visual Studio 2017 (15.5) 附带 TypeScript 2.5。

我们发现 Visual Studio TypeScript SDK 安装在以下路径:

  • C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.2
  • C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.5

我们注意到 15.5 在 csproj 属性屏幕中带有一个新属性,它允许直接更改所需的 TypeScript 版本。由于该项目需要未安装的 2.2,因此下拉列表显示缺少的 2.2 位。

我们试图解决这个问题:

  1. 为 Visual Studio 2015 安装了 TypeScript 2.2 SDK(对于 2017,没有单独的安装)。不幸的是,这个包似乎没有附带语言服务tsserver.js。不工作。网址:http: //download.microsoft.com/download/6/D/8/6D8381B0-03C1-4BD2-AE65-30FF0A4C62DA/TS-2.2-dev14update3-20170221.2/TypeScript_Dev14Full.exe
  2. 使用 NuGet 包Microsoft.TypeScript.Compiler并安装了 2.2.1(没有 2.2.2 可用?)。这似乎没有解决任何问题。我们不清楚这个包是如何真正融入某些东西的。即使在添加特定属性之后TypeScriptNuGetToolsVersion
  3. 使用 NuGet 包Microsoft.TypeScript.MSBuild并安装了 2.2.2 版。不幸的是,这只会影响 MSBuild 过程,而不会影响编辑器体验。MSBuild 与我们无关,因为我们使用 Angular CLI 来真正构建/查看 TypeScript 源代码。
  4. 复制我们的 Visual Studio 2015 安装之一的 2.2 位。这启用了 csproj 属性屏幕中的 2.2 菜单选项。但是,我们仍然会遇到与 lib.es2015.d.ts 的冲突。我们发现 SDK 似乎总是使用最新版本,在我们的例子中是 2.5。我们也安装了2.6,然后就开始用2.6了。
  5. 最终,我们完全删除了 2.6 文件夹并创建了一个名为 2.6 的 2.2 文件夹的副本。现在它可以工作了。但这真的感觉像一个黑客!

总结我们的问题:

  • 将 TypeScript SDK 2.2 安装到 Visual Studio 2017 (15.5) 的最佳方法是什么?
  • 从 2.2 版开始真正强制使用 lib.es2015.d.ts 的最佳方法是什么?
0 投票
1 回答
276 浏览

javascript - 为什么 Date() 返回错误的日期?

我有以下功能:

我尝试从当前日期开始加/减几天。想法是在当前日期添加 7 天并返回上一个日期和下一个日期。

参数是确定到下一个日期或上一个日期的方向operation的数字或正数或负数。1

我总是排错日期:

这是我的第二个解决方案,更明显的是: