我正致力于为节点库[1]创建类型定义,但我在组织文件方面遇到了麻烦。
我已将typings
字段添加到package.json并且效果很好,我遇到的问题是我要指定多个类型定义文件,因为库本身是分为两个切入点:
所以我为两个入口点创建了类型定义,但我不确定如何正确使用typings
字段。这是我的结构(我只包括相关的内容):
├── index.js
├── native.js
├── package.json
├── typings
│ ├── styled-components-native-test.tsx
│ ├── styled-components-native.d.ts
│ ├── styled-components-test.tsx
│ └── styled-components.d.ts
在styled-components.d.ts
我有主要定义,应该加载import styled from "styled-components"
。
在styled-components-native.d.ts
中,我有本地入口点的定义,应该加载import { x } from "styled-components/native"
。
package.json中的typings
字段指向typings/styled-components.d.ts
,但这并不能使styled-components-native.d.ts
定义可用。
我还尝试过index.d.ts
并引用(使用三次斜线表示法)其他两个文件,但它没有用。
有没有办法实现这个目标?
[1]这是我的公关https://github.com/styled-components/styled-components/pull/152
答案 0 :(得分:1)
尝试:
├── index.js
├── index.d.ts
├── native.js
├── native.d.ts
此应正常工作,因为像@angular/material
这样的程序包将这些类型的类型捆绑为此类导入。
基本上,打字稿编译器将查找与JavaScript文件同名的.d.ts
文件。
(编辑:抱歉,没有意识到这个问题太老了……无论如何都会对答案有所帮助)