问题标签 [typescript3.0]

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 回答
601 浏览

asp.net-mvc-5 - 带有 Angular 6-7 且没有 Node.js 的 ASP.NET MVC 5

我需要将 Angular 6 或 7(撰写本文时的最新版本是 7.0.3)与 ASP.NET MVC 5 应用程序(.NET Framework 4.5+,没有 .NET Core)集成。

Node.js 是运行 Angular 的“必备”吗?我需要安装“尽可能小的环境”来实现我的目标。

我还必须使用 TypeScript (v3) 但不能使用 Javascript。那可能吗?有什么建议么?

提前谢谢了。

编辑:我寻找了一个 VS 2017 社区版项目模板,但其中大部分是针对 .NET Core 的。如果您指向此类模板的下载位置(ASP.NET MVC 5、TypeScript、Angular 5-7、无 Node.js),那就太好了。

0 投票
0 回答
908 浏览

javascript - 如何在asp.net mvc视图上调用打字稿方法

我在我的 mvc 5 应用程序中集成了 typescript 并创建了一个 typescript 文件来加载我的 json 数据。我收到“未定义导出”的错误(我不知道如何解决这个问题)。
另外我想知道如何在页面加载时将数据加载到我的Index.cshtml视图中。
如何创建用于插入数据的 post 方法?
谁能告诉我如何实现这一目标?

我试过的

应用程序.ts

tsConfig.json

员工控制器

我正在使用 vs 2017 和 typescript 3.1 。
任何帮助我都会非常感激。

0 投票
0 回答
54 浏览

typescript - Typescript3.1.3 + 泛型,类型分配错误

考虑这种情况(虚拟示例):

任何人都可以解释为什么在Farmer构造函数中(我将this参数传递给new Animal)上面的代码会引发这个错误?

以下解决问题:

或者作为替代:

对我来说更奇怪的是:

虽然前两个解决方案很清楚,但后者让我更加怀疑。谁能解释发生了什么?

编辑

以下很好(考虑Animal构造函数中的可选参数):

与第一种情况相比,在这里我看不出类型有任何区别。

0 投票
1 回答
3915 浏览

typescript - 如何在 TypeScript 中获取类方法的返回类型

在较新的 TypeScript 版本中(我认为是 2.8 以后的版本?),我可以轻松获得函数的返回类型:

但我不知道从类方法中获取相同的信息……</p>

我如何获得的返回类型(new MyClass()).foo()

0 投票
1 回答
4680 浏览

typescript - 打字稿删除可选属性

我正在尝试为构建器构建动态类型

如果我有一个带有可选属性的类或接口,我会收到这种错误:

这是我的课

我期望该类型为每个属性创建一个具有非可选方法的构建器,但由于某种原因,该可选性patate似乎是键而不是类型所固有的。我没有得到这个属性的行为literal

这对我来说似乎是个问题。我正在使用打字稿 3.1.4。还有另一种方法可以动态删除问号吗?

我尝试使用NonNullable帮助程序首先创建我的类型的副本,没有任何可为空的,但patate仍然是可选的。

这是vscode给我的有效类型

0 投票
1 回答
5504 浏览

typescript - TS1238:作为表达式调用时无法解析类装饰器的签名

我看到以下编译错误:

TS1238:当作为表达式调用时,无法解析类装饰器的签名。

这是代码:

有谁知道如何解决该错误?

0 投票
1 回答
50 浏览

typescript - 除非所有字段都存在,否则阻止编译

我有这个打字稿代码:

这可以编译 - 除非对象中存在所有 3 个字段,否则如何防止它编译?现在只有一个字段存在。

这是我的用例/基本原理: https ://gist.github.com/ORESoftware/8d02fb30c53c19f6b38bddbc96da2475

但如果你这样做:

然后它不会编译。如果你这样做:

那不会编译。

0 投票
1 回答
17 浏览

tsc - 存储对命名空间而不是类型的引用

假设我有一个这样的命名空间:

在 .ts 文件中,我有这样的内容:

这可能会有点冗长,我希望做这样的事情:

但我似乎无法存储对命名空间的引用,我只能存储对类型的引用?(我得到的错误是命名空间 Foo2 没有导出的成员 Foo3)。

0 投票
0 回答
189 浏览

angular - 无法对 Illustrator 对象的拖放执行 datatransfer.getData()

我正在构建一个网络工具,允许用户从不同来源拖放图像。我可以从文件系统和浏览器中拖放对象,但我无法使用 adobe illustrator 中的对象执行此操作。

的HTML:

事件中的文件类型是com.adobe.cep.dnd.pasteboardtype。当我阅读文件类型时,我得到以下信息。

虽然我们应该收到一些 SVG 或图像。

0 投票
1 回答
760 浏览

javascript - 优化大型 TypeScript 文件的编译

我有一个自动生成的 TypeScript 文件,它只导出一个包含 65,000 个小对象的数组。自动生成是临时完成的,但每次构建项目时都会进行编译。由于大部分构建时间都花在了编译这个特定的文件上,我想优化一下它。

这种优化主要是一个好主意,因为文件每年只更改 1-3 次。其他一些部分依赖于这个文件,所以我认为我不能不编译它。

是否有可能以某种方式不编译文件,如果它没有被更改,同时仍然能够引用它?