servicestack,Typescript,servicestack" /> servicestack,Typescript,servicestack" />

你怎么样';默认导入';尝试使用ServiceStack将DTO导入typescript时使用?

你怎么样';默认导入';尝试使用ServiceStack将DTO导入typescript时使用?,typescript,servicestack,Typescript,servicestack,在尝试使用ServiceStack for TypeScript提供的cli工具时,我经常遇到DefaultImports功能无法按预期工作,或者以任何特定的有用方式工作。使用此功能的正确方法是什么 例如: /* Options: Date: 2019-02-08... ... //ExcludeTypes: DefaultImports: Example */ 将输出 导入示例 这是无效的,我期望的格式是从ExampleModule导入示例。我是完全遗漏了什么,还是我的理解错了 Defa

在尝试使用ServiceStack for TypeScript提供的cli工具时,我经常遇到
DefaultImports
功能无法按预期工作,或者以任何特定的有用方式工作。使用此功能的正确方法是什么

例如:

/* Options:
Date: 2019-02-08...

...
//ExcludeTypes: 
DefaultImports: Example
*/
将输出

导入示例

这是无效的,我期望的格式是
从ExampleModule导入示例
。我是完全遗漏了什么,还是我的理解错了


DefaultImports:ExampleModule中的示例
导致出现乱码
import ExamplefromExampleModule。用引号括起来也无济于事。

Hare是一些不同的
DefaultTypes
导入的流行示例:

  • ->
    导入“es6垫片”
  • ->
    import'/my module.js'
  • ->
    从“JQuery”导入$
  • ->
    import*作为Zip从“/ZipCodeValidator”导入
我还为流行的
Symbol:module
import添加了快捷支持,它将在其中发出:

import { Symbol } from "module";
此更改可从现在的v5.4.1中获得

我无法使用最新版本复制您的确切问题,因此我建议您首先升级用于获取DTO的工具

npm工具 如果使用npm工具,您可以通过卸载和重新安装来升级:

$ npm uninstall @servicestack/cli
$ npm i -g @servicestack/cli
然后通过检查以下版本,检查您至少使用了v1.0.7

$ typescript-ref -v

Version: 1.0.7
然后,您可以在不带参数的情况下运行该工具来更新目录中的任何
*dtos.ts
,例如:

$ typescript-ref
使用DTO(运行最新版本)尝试此操作,使用新的
Symbol:Module
语法:

/* Options:
...
DefaultImports: Zip:./ZipCodeValidator
*/
生成预期的导入:

import { Zip } from "./ZipCodeValidator";
您尝试的导入也可以工作:

/* Options:
...
DefaultImports: * as Zip from './ZipCodeValidator'
*/
这将生成预期的:

import * as Zip from './ZipCodeValidator';
如果它仍然不适用于您,那么您需要升级您试图从中生成DTO的API的ServiceStack版本

您可以通过生成使用最新版本ServiceStack的DTO来检查工具本身是否工作:

$ typescript-ref https://techstacks.io
网络工具 作为使用
@servicestack/cli
npm工具的替代方法,您还可以使用,安装时使用:

$ dotnet tool install -g web
并更新为:

$ dotnet tool update -g web
检查您是否正在运行最新的
0.0.16
版本:

$ web -v

Version: 0.0.16
然后,您可以使用
web ts
代替
typescript-ref
(或
ts-ref
)npm工具,例如,使用以下工具安装DTO:

$ web ts https://techstacks.io
$ web ts
使用以下内容更新DTO:

$ web ts https://techstacks.io
$ web ts

使用“/ZipCodeValidator”中的
import*作为Zip文件导致:
DefaultImports:*asZipfrom'/ZipCodeValidator'*/import*asZipfrom'/ZipCodeValidator'为什么它似乎对您正常工作,但我删除了所有空格并输出了一个乱码?这似乎仍然不像您所说的那样正常工作@mythz@E.Hayden我提供了实时链接来显示每个样式的结果,您可以从每个链接复制DefaultImport(不应该有import语句)。我还刚刚更新了TechStacks以使用v5.4.1 MyGet软件包,现在您可以使用新的符号。您使用什么工具来更新DTO?我正在使用提供的WebStorm插件,但我也尝试使用CLI。我已经尝试过准确地复制您的示例,并且它总是删除所有的空格,从而提供不可用的输出。