小编Jac*_*cks的帖子

了解 Node JS 和 TypeScript 中的类型定义文件

我试图了解 TypeScript 项目如何解析通过 npm 安装的模块及其类型定义文件的导入。

据我所知(并遵循TypeScript 文档),TypeScript有两种方式用于模块解析:

  • 使用相对路径:它将检查当前目录中的模块文件是否存在(myModule.js,myModule.tsxmyModule.d.ts)或位于名为myModule(包含index.js,index.tsxindex.d.ts)的目录中

  • 使用非相对路径:它将检查 NodeJS 行为后的导入node_modules,方法是以与相对路径的引用相同的方式检入文件夹,如果未找到则跳转目录

所以看起来很容易理解。我不明白,是怎么解决的类型定义文件采用进口的时候npm install @types/myModule。我需要理解这一点才能正确构建我的项目,并理解为什么有时找不到我的模块/类型定义。

我不明白它是如何知道“其中的文件夹node_modules/@types/myModule包含以下类型的定义myModule:它必须在该文件夹中检查的信息存储在哪里?

奖励:导入和管理类型定义文件的最佳方法是什么?是安装@types相关模块的包,还是下载file.d.ts并将其放在模块文件夹中更好node_modules

非常感谢任何帮助和/或参考。

javascript node.js typescript

6
推荐指数
0
解决办法
1149
查看次数

在 TypeScript 中创建包含所有导出的模块

我想达到什么目的

我正在尝试在 TypeScript 中创建一个模块,该模块将包含所需类的每个导出。事实上,真正困扰我的是import在我的类中拥有所有相对的语句,这并不是进一步维护的最佳方式。我只想使用绝对路径。

一旦被转译,具有绝对路径的类(在生成的 JavaScript 中)有错误的路径(因为它们没有被转换为相对路径,当与tsconfig.json>outDir选项结合使用时甚至更糟)。

示例用法

让我们以下面的项目层次结构为例

root
|- helpers
   |- MyHelper.ts
   |- AnotherHelper.ts
|- calculators
   |- MyCalc.ts
|- parsers
   |- XmlParser.ts
   |- JsonParser.ts
|- index.ts // currently holding export statements
Run Code Online (Sandbox Code Playgroud)

我想做的事

我想要一个这样的index.ts文件:

// a top-level module, resolved like the `node` strategy of NodeJS module resolution
export module IndexModule {
    export { MyHelper } from "./helpers/MyHelper";
    export { AnotherHelper } from "./helpers/AnotherHelper";
    // do the same for every class in …
Run Code Online (Sandbox Code Playgroud)

module node.js typescript

5
推荐指数
1
解决办法
1400
查看次数

Guice:注入一个字符串的ArrayList

我试图注入一个ArrayListString与吉斯的帮助秒.我想显示一个带有许多RadioButtons的面板(例如),用户可以选择一些要激活的服务.

选择后,我想获取所选服务的所有名称并将其添加到列表中,并将此列表注入负责创建服务的经理.这是一个例子:

public class UIProviderModule extends ProviderServiceModule {
    private ArrayList<String> requestedServices;

    public UIProviderModule(ArrayList<String> requestedServices) {
        this.requestedServices = requestedServices;
    }

    @Override
    protected void configure() {
        bindConstant().annotatedWith(Names.named(Constants.REQ_SERVICES)).to(requestedServices);
        bind(IParser.class).to(UIParser.class);
        super.configure();
    }

}
Run Code Online (Sandbox Code Playgroud)

我见过很多关于Multibindings和提供者的帖子,但我不明白这对我有什么帮助.我只是想检索名称,因为我不使用必须绑定到接口的类.我错过了什么吗?

注意:我知道这可能不是使用Guice好方法,因为我将列表绑定到Module.

java arraylist inject guice

3
推荐指数
1
解决办法
2490
查看次数

Flex-Layout : 将最后一项水平推到最后

这是我到目前为止所做的:

https://stackblitz.com/edit/angular-jsmp9l

在代码片段上,我们可以看到一个包含按钮的简单工具栏(以更大的尺寸打开 HTML 视图,因为有一些fxShow / fxHide指令正在触发)。

我想要做的是按下 div 末尾的登录按钮,最右边。

我尝试了以下方法:

  • <span style="flex: 1 1 auto;"></span>在登录和联系按钮之间添加一个
  • 添加一个style="margin-left: auto;"到登录按钮
  • 添加fxFlexFilldiv包含链接的元素,并用重试spanmargin-left以上作为mentionned
  • 四处寻找有关 Flex 容器的文档,但没有任何帮助

如果我删除div容器并使用<span style="flex: 1 1 auto;">它正常工作,登录按钮会出现在工具栏的末尾(水平)。

我想了解为什么div容器会导致这种行为,以及如何将登录按钮推到右侧。也许我对 Flex 容器的理解不是很好,所以欢迎任何指点。

angular-material angular-flex-layout

3
推荐指数
1
解决办法
4169
查看次数

在对话框中的按钮下添加文本

我想知道是否有办法在对话框的按钮下显示一些文字(如信息)?我在许多地方看过,但即使对齐按钮看起来很乱(从这篇文章).

这就是我现在所得到的.我只想在2个按钮下面的"设置我的选择..."文本.

对话简单

我在文档中查找了一个函数,可以帮助我显示我想要的方式(比如" getButtonBar()"或类似的东西).ButtonBar对于我想要实现的目标而言,创建新的东西似乎有点复杂.

我还尝试创建一个看起来像对话框的舞台,但是我需要以与Dialogs 一样的方式点击"是/否"来传递结果.

有没有办法实现我想要的?或者我必须自己完全构建它?谢谢 !

dialog javafx

1
推荐指数
1
解决办法
958
查看次数