@4399ywkf/cli 1.0.8 → 1.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/templates/AntdStaticMethods/index.tsx +20 -0
- package/dist/templates/AppTheme.tsx +136 -0
- package/dist/templates/DIRECTORY_STRUCTURE.md +141 -0
- package/dist/templates/GlobalProvider/AppTheme.tsx +136 -0
- package/dist/templates/GlobalProvider/Locale.tsx +84 -0
- package/dist/templates/GlobalProvider/Query.tsx +12 -0
- package/dist/templates/GlobalProvider/StyleRegistry.tsx +9 -0
- package/dist/templates/GlobalProvider/index.tsx +23 -0
- package/dist/templates/Locale.tsx +55 -56
- package/dist/templates/Query.tsx +12 -0
- package/dist/templates/StyleRegistry.tsx +9 -0
- package/dist/templates/analyzeUnusedKeys.ts +506 -0
- package/dist/templates/app/.i18nrc.js +57 -0
- package/dist/templates/app/config/jwt/index.ts +2 -1
- package/dist/templates/app/docs/DIRECTORY_STRUCTURE.md +141 -0
- package/dist/templates/app/docs/glossary.md +11 -0
- package/dist/templates/app/package.json.tpl +7 -15
- package/dist/templates/app/scripts/i18nWorkflow/analyzeUnusedKeys.ts +506 -0
- package/dist/templates/app/scripts/i18nWorkflow/cleanUnusedKeys.ts +344 -0
- package/dist/templates/app/scripts/i18nWorkflow/const.ts +18 -0
- package/dist/templates/app/scripts/i18nWorkflow/flattenLocaleKeys.ts +139 -0
- package/dist/templates/app/scripts/i18nWorkflow/genDefaultLocale.ts +19 -0
- package/dist/templates/app/scripts/i18nWorkflow/genDiff.ts +49 -0
- package/dist/templates/app/scripts/i18nWorkflow/i18nConfig.ts +7 -0
- package/dist/templates/app/scripts/i18nWorkflow/index.ts +11 -0
- package/dist/templates/app/scripts/i18nWorkflow/protectedPatterns.ts +91 -0
- package/dist/templates/app/scripts/i18nWorkflow/utils.ts +76 -0
- package/dist/templates/app/src/components/AntdStaticMethods/index.tsx +20 -0
- package/dist/templates/app/src/index.tsx +0 -4
- package/dist/templates/app/src/layout/GlobalProvider/AppTheme.tsx +136 -0
- package/dist/templates/app/src/layout/GlobalProvider/Locale.tsx +84 -0
- package/dist/templates/app/src/layout/GlobalProvider/Query.tsx +12 -0
- package/dist/templates/app/src/layout/GlobalProvider/StyleRegistry.tsx +9 -0
- package/dist/templates/app/src/layout/GlobalProvider/index.tsx +23 -0
- package/dist/templates/app/src/locales/utils.ts +23 -0
- package/dist/templates/app/src/pages/base/index.tsx +170 -79
- package/dist/templates/app/src/routes.tsx +2 -2
- package/dist/templates/app/tsconfig.json +19 -3
- package/dist/templates/base/index.tsx +170 -79
- package/dist/templates/cleanUnusedKeys.ts +344 -0
- package/dist/templates/components/AntdStaticMethods/index.tsx +20 -0
- package/dist/templates/config/jwt/index.ts +2 -1
- package/dist/templates/const.ts +18 -0
- package/dist/templates/docs/DIRECTORY_STRUCTURE.md +141 -0
- package/dist/templates/docs/glossary.md +11 -0
- package/dist/templates/flattenLocaleKeys.ts +139 -0
- package/dist/templates/genDefaultLocale.ts +19 -0
- package/dist/templates/genDiff.ts +49 -0
- package/dist/templates/glossary.md +11 -0
- package/dist/templates/i18nConfig.ts +7 -0
- package/dist/templates/i18nWorkflow/analyzeUnusedKeys.ts +506 -0
- package/dist/templates/i18nWorkflow/cleanUnusedKeys.ts +344 -0
- package/dist/templates/i18nWorkflow/const.ts +18 -0
- package/dist/templates/i18nWorkflow/flattenLocaleKeys.ts +139 -0
- package/dist/templates/i18nWorkflow/genDefaultLocale.ts +19 -0
- package/dist/templates/i18nWorkflow/genDiff.ts +49 -0
- package/dist/templates/i18nWorkflow/i18nConfig.ts +7 -0
- package/dist/templates/i18nWorkflow/index.ts +11 -0
- package/dist/templates/i18nWorkflow/protectedPatterns.ts +91 -0
- package/dist/templates/i18nWorkflow/utils.ts +76 -0
- package/dist/templates/index.tsx +170 -79
- package/dist/templates/jwt/index.ts +2 -1
- package/dist/templates/layout/GlobalProvider/AppTheme.tsx +136 -0
- package/dist/templates/layout/GlobalProvider/Locale.tsx +84 -0
- package/dist/templates/layout/GlobalProvider/Query.tsx +12 -0
- package/dist/templates/layout/GlobalProvider/StyleRegistry.tsx +9 -0
- package/dist/templates/layout/GlobalProvider/index.tsx +23 -0
- package/dist/templates/locales/utils.ts +23 -0
- package/dist/templates/package.json.tpl +7 -15
- package/dist/templates/pages/base/index.tsx +170 -79
- package/dist/templates/protectedPatterns.ts +91 -0
- package/dist/templates/routes.tsx +2 -2
- package/dist/templates/scripts/i18nWorkflow/analyzeUnusedKeys.ts +506 -0
- package/dist/templates/scripts/i18nWorkflow/cleanUnusedKeys.ts +344 -0
- package/dist/templates/scripts/i18nWorkflow/const.ts +18 -0
- package/dist/templates/scripts/i18nWorkflow/flattenLocaleKeys.ts +139 -0
- package/dist/templates/scripts/i18nWorkflow/genDefaultLocale.ts +19 -0
- package/dist/templates/scripts/i18nWorkflow/genDiff.ts +49 -0
- package/dist/templates/scripts/i18nWorkflow/i18nConfig.ts +7 -0
- package/dist/templates/scripts/i18nWorkflow/index.ts +11 -0
- package/dist/templates/scripts/i18nWorkflow/protectedPatterns.ts +91 -0
- package/dist/templates/scripts/i18nWorkflow/utils.ts +76 -0
- package/dist/templates/src/components/AntdStaticMethods/index.tsx +20 -0
- package/dist/templates/src/index.tsx +0 -4
- package/dist/templates/src/layout/GlobalProvider/AppTheme.tsx +136 -0
- package/dist/templates/src/layout/GlobalProvider/Locale.tsx +84 -0
- package/dist/templates/src/layout/GlobalProvider/Query.tsx +12 -0
- package/dist/templates/src/layout/GlobalProvider/StyleRegistry.tsx +9 -0
- package/dist/templates/src/layout/GlobalProvider/index.tsx +23 -0
- package/dist/templates/src/locales/utils.ts +23 -0
- package/dist/templates/src/pages/base/index.tsx +170 -79
- package/dist/templates/src/routes.tsx +2 -2
- package/dist/templates/tsconfig.json +19 -3
- package/dist/templates/type.ts +23 -24
- package/dist/templates/utils.ts +23 -0
- package/package.json +19 -21
|
@@ -11,14 +11,117 @@ import {
|
|
|
11
11
|
import React from "react";
|
|
12
12
|
import { createStyles } from "antd-style";
|
|
13
13
|
|
|
14
|
-
const { Title, Paragraph, Text
|
|
14
|
+
const { Title, Paragraph, Text } = Typography;
|
|
15
15
|
|
|
16
|
-
const
|
|
17
|
-
|
|
16
|
+
const px = (value: number | string) =>
|
|
17
|
+
typeof value === "number" ? `${value}px` : value;
|
|
18
|
+
|
|
19
|
+
const useStyles = createStyles(({ token, css }) => ({
|
|
20
|
+
root: css`
|
|
18
21
|
width: 100%;
|
|
19
|
-
height:
|
|
22
|
+
min-height: 100vh;
|
|
23
|
+
padding: ${px(token.paddingLG)};
|
|
24
|
+
background: linear-gradient(180deg, ${token.colorFillTertiary}, ${token.colorPrimaryHover});
|
|
20
25
|
overflow: auto;
|
|
21
26
|
`,
|
|
27
|
+
container: css`
|
|
28
|
+
margin: 0 auto;
|
|
29
|
+
max-width: 960px;
|
|
30
|
+
`,
|
|
31
|
+
hero: css`
|
|
32
|
+
text-align: center;
|
|
33
|
+
margin-bottom: ${px(token.marginLG)};
|
|
34
|
+
`,
|
|
35
|
+
heroIcon: css`
|
|
36
|
+
font-size: 3.5rem;
|
|
37
|
+
color: ${token.colorPrimary};
|
|
38
|
+
animation: bounce 1.2s infinite alternate;
|
|
39
|
+
|
|
40
|
+
@keyframes bounce {
|
|
41
|
+
from {
|
|
42
|
+
transform: translateY(0);
|
|
43
|
+
}
|
|
44
|
+
to {
|
|
45
|
+
transform: translateY(-6px);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
`,
|
|
49
|
+
tagSpace: css`
|
|
50
|
+
margin-top: ${px(token.marginMD)};
|
|
51
|
+
`,
|
|
52
|
+
featuresGrid: css`
|
|
53
|
+
display: grid;
|
|
54
|
+
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
|
|
55
|
+
gap: ${px(token.marginSM)};
|
|
56
|
+
margin-bottom: ${px(token.marginLG)};
|
|
57
|
+
`,
|
|
58
|
+
featureCard: css`
|
|
59
|
+
text-align: center;
|
|
60
|
+
transition: transform 0.3s ease, box-shadow 0.3s ease;
|
|
61
|
+
|
|
62
|
+
&:hover {
|
|
63
|
+
transform: translateY(-6px);
|
|
64
|
+
box-shadow: ${token.boxShadowSecondary};
|
|
65
|
+
}
|
|
66
|
+
`,
|
|
67
|
+
quickLinkGrid: css`
|
|
68
|
+
display: grid;
|
|
69
|
+
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
|
|
70
|
+
gap: ${px(token.marginSM)};
|
|
71
|
+
`,
|
|
72
|
+
quickLink: css`
|
|
73
|
+
padding: ${px(token.paddingMD)};
|
|
74
|
+
border-radius: ${px(token.borderRadiusLG)};
|
|
75
|
+
background: ${token.colorBgContainer};
|
|
76
|
+
cursor: pointer;
|
|
77
|
+
transition: background 0.2s ease;
|
|
78
|
+
|
|
79
|
+
&:hover {
|
|
80
|
+
background: ${token.colorBgElevated};
|
|
81
|
+
}
|
|
82
|
+
`,
|
|
83
|
+
footerActions: css`
|
|
84
|
+
margin-top: ${px(token.marginMD)};
|
|
85
|
+
text-align: center;
|
|
86
|
+
`,
|
|
87
|
+
cardTitle: css`
|
|
88
|
+
display: inline-flex;
|
|
89
|
+
align-items: center;
|
|
90
|
+
gap: ${px(token.marginXS)};
|
|
91
|
+
font-size: ${px(token.fontSizeHeading4)};
|
|
92
|
+
`,
|
|
93
|
+
codeBlock: css`
|
|
94
|
+
margin-top: ${px(token.marginXS)};
|
|
95
|
+
padding: ${px(token.paddingSM)};
|
|
96
|
+
background: ${token.colorFillAlter};
|
|
97
|
+
border-radius: ${px(token.borderRadiusLG)};
|
|
98
|
+
font-family: ${token.fontFamilyCode};
|
|
99
|
+
font-size: ${px(token.fontSizeSM)};
|
|
100
|
+
`,
|
|
101
|
+
stepLabel: css`
|
|
102
|
+
font-size: ${px(token.fontSizeBase)};
|
|
103
|
+
`,
|
|
104
|
+
quickLinkLabel: css`
|
|
105
|
+
font-size: ${px(token.fontSizeHeading2)};
|
|
106
|
+
margin-bottom: ${px(token.marginXS)};
|
|
107
|
+
`,
|
|
108
|
+
quickLinkDescription: css`
|
|
109
|
+
color: ${token.colorTextTertiary};
|
|
110
|
+
`,
|
|
111
|
+
panelCard: css`
|
|
112
|
+
margin-bottom: ${px(token.marginLG)};
|
|
113
|
+
background: ${token.colorBgElevated};
|
|
114
|
+
`,
|
|
115
|
+
featureIcon: css`
|
|
116
|
+
margin-bottom: ${px(token.marginMD)};
|
|
117
|
+
`,
|
|
118
|
+
footerParagraph: css`
|
|
119
|
+
margin-top: ${px(token.marginMD)};
|
|
120
|
+
color: ${token.colorTextTertiary};
|
|
121
|
+
`,
|
|
122
|
+
textCenterCard: css`
|
|
123
|
+
text-align: center;
|
|
124
|
+
`,
|
|
22
125
|
}));
|
|
23
126
|
|
|
24
127
|
export default function BasePage() {
|
|
@@ -28,17 +131,17 @@ export default function BasePage() {
|
|
|
28
131
|
|
|
29
132
|
const features = [
|
|
30
133
|
{
|
|
31
|
-
icon: <ThunderboltOutlined className=
|
|
134
|
+
icon: <ThunderboltOutlined className={styles.heroIcon} />,
|
|
32
135
|
title: "Rspack 构建",
|
|
33
136
|
description: "基于 Rspack 的极速构建体验,开发效率翻倍",
|
|
34
137
|
},
|
|
35
138
|
{
|
|
36
|
-
icon: <BulbOutlined className=
|
|
139
|
+
icon: <BulbOutlined className={styles.heroIcon} />,
|
|
37
140
|
title: "React 19",
|
|
38
141
|
description: "使用最新的 React 19 特性,享受并发渲染",
|
|
39
142
|
},
|
|
40
143
|
{
|
|
41
|
-
icon: <SettingOutlined className=
|
|
144
|
+
icon: <SettingOutlined className={styles.heroIcon} />,
|
|
42
145
|
title: "TypeScript",
|
|
43
146
|
description: "完整的 TypeScript 支持,类型安全有保障",
|
|
44
147
|
},
|
|
@@ -52,107 +155,94 @@ export default function BasePage() {
|
|
|
52
155
|
];
|
|
53
156
|
|
|
54
157
|
return (
|
|
55
|
-
<div
|
|
56
|
-
className={
|
|
57
|
-
styles.app,
|
|
58
|
-
"min-h-screen bg-gradient-to-br from-blue-50 to-indigo-50 dark:from-gray-900 dark:to-gray-800 p-8"
|
|
59
|
-
)}
|
|
60
|
-
>
|
|
61
|
-
<div className="max-w-6xl mx-auto">
|
|
158
|
+
<div className={cx(styles.root)}>
|
|
159
|
+
<div className={styles.container}>
|
|
62
160
|
<Flex vertical gap={12}>
|
|
63
|
-
{
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
<RocketOutlined className="text-6xl text-blue-500 animate-bounce" />
|
|
161
|
+
<section className={styles.hero}>
|
|
162
|
+
<div>
|
|
163
|
+
<RocketOutlined className={styles.heroIcon} />
|
|
67
164
|
</div>
|
|
68
|
-
<Title level={1}
|
|
165
|
+
<Title level={1} style={{ marginBottom: 16 }}>
|
|
69
166
|
🎉 恭喜!项目创建成功
|
|
70
167
|
</Title>
|
|
71
|
-
<Paragraph
|
|
168
|
+
<Paragraph>
|
|
72
169
|
你的项目已经准备就绪,现在可以开始开发了
|
|
73
170
|
</Paragraph>
|
|
74
|
-
<Space size="middle" className=
|
|
171
|
+
<Space size="middle" className={styles.tagSpace}>
|
|
75
172
|
<Tag color="blue">React 19</Tag>
|
|
76
173
|
<Tag color="green">TypeScript</Tag>
|
|
77
174
|
<Tag color="orange">Rspack</Tag>
|
|
78
175
|
<Tag color="purple">Ant Design</Tag>
|
|
79
176
|
<Tag color="cyan">Tailwind CSS</Tag>
|
|
80
177
|
</Space>
|
|
81
|
-
</
|
|
178
|
+
</section>
|
|
82
179
|
|
|
83
|
-
{
|
|
84
|
-
<div className="grid grid-cols-1 md:grid-cols-3 gap-6 mb-12">
|
|
180
|
+
<div className={styles.featuresGrid}>
|
|
85
181
|
{features.map((feature, index) => (
|
|
86
182
|
<Card
|
|
87
183
|
key={index}
|
|
88
184
|
hoverable
|
|
89
|
-
className=
|
|
185
|
+
className={cx(styles.featureCard)}
|
|
186
|
+
bodyStyle={{ padding: 24 }}
|
|
90
187
|
>
|
|
91
|
-
<div className=
|
|
188
|
+
<div className={styles.featureIcon}>{feature.icon}</div>
|
|
92
189
|
<Title level={4}>{feature.title}</Title>
|
|
93
|
-
<Paragraph
|
|
94
|
-
{feature.description}
|
|
95
|
-
</Paragraph>
|
|
190
|
+
<Paragraph type="secondary">{feature.description}</Paragraph>
|
|
96
191
|
</Card>
|
|
97
192
|
))}
|
|
98
193
|
</div>
|
|
99
194
|
|
|
100
|
-
{/* 快速开始 */}
|
|
101
195
|
<Card
|
|
102
196
|
title={
|
|
103
|
-
<span className=
|
|
104
|
-
<BookOutlined
|
|
197
|
+
<span className={styles.cardTitle}>
|
|
198
|
+
<BookOutlined />
|
|
105
199
|
快速开始
|
|
106
200
|
</span>
|
|
107
201
|
}
|
|
108
|
-
className=
|
|
202
|
+
className={styles.panelCard}
|
|
109
203
|
>
|
|
110
|
-
<Space direction="vertical" size="large"
|
|
204
|
+
<Space direction="vertical" size="large">
|
|
111
205
|
<div>
|
|
112
|
-
<Text strong className=
|
|
206
|
+
<Text strong className={styles.stepLabel}>
|
|
113
207
|
1. 安装依赖
|
|
114
208
|
</Text>
|
|
115
|
-
<div className=
|
|
209
|
+
<div className={styles.codeBlock}>
|
|
116
210
|
<code>pnpm install</code>
|
|
117
211
|
</div>
|
|
118
212
|
</div>
|
|
119
213
|
<div>
|
|
120
|
-
<Text strong className=
|
|
214
|
+
<Text strong className={styles.stepLabel}>
|
|
121
215
|
2. 启动开发服务器
|
|
122
216
|
</Text>
|
|
123
|
-
<div className=
|
|
217
|
+
<div className={styles.codeBlock}>
|
|
124
218
|
<code>pnpm dev</code>
|
|
125
219
|
</div>
|
|
126
220
|
</div>
|
|
127
221
|
<div>
|
|
128
|
-
<Text strong className=
|
|
222
|
+
<Text strong className={styles.stepLabel}>
|
|
129
223
|
3. 构建生产版本
|
|
130
224
|
</Text>
|
|
131
|
-
<div className=
|
|
225
|
+
<div className={styles.codeBlock}>
|
|
132
226
|
<code>pnpm build</code>
|
|
133
227
|
</div>
|
|
134
228
|
</div>
|
|
135
229
|
</Space>
|
|
136
230
|
</Card>
|
|
137
231
|
|
|
138
|
-
{/* 快捷链接 */}
|
|
139
232
|
<Card
|
|
140
233
|
title={
|
|
141
|
-
<span className=
|
|
142
|
-
<GithubOutlined
|
|
234
|
+
<span className={styles.cardTitle}>
|
|
235
|
+
<GithubOutlined />
|
|
143
236
|
快捷链接
|
|
144
237
|
</span>
|
|
145
238
|
}
|
|
146
|
-
className=
|
|
239
|
+
className={styles.panelCard}
|
|
147
240
|
>
|
|
148
|
-
<div className=
|
|
241
|
+
<div className={styles.quickLinkGrid}>
|
|
149
242
|
{quickLinks.map((link, index) => (
|
|
150
|
-
<div
|
|
151
|
-
|
|
152
|
-
className=
|
|
153
|
-
>
|
|
154
|
-
<div className="text-2xl mb-2">{link.label}</div>
|
|
155
|
-
<Text className="text-sm text-gray-600 dark:text-gray-400">
|
|
243
|
+
<div key={index} className={styles.quickLink}>
|
|
244
|
+
<div className={styles.quickLinkLabel}>{link.label}</div>
|
|
245
|
+
<Text className={styles.quickLinkDescription}>
|
|
156
246
|
{link.description}
|
|
157
247
|
</Text>
|
|
158
248
|
</div>
|
|
@@ -160,34 +250,35 @@ export default function BasePage() {
|
|
|
160
250
|
</div>
|
|
161
251
|
</Card>
|
|
162
252
|
|
|
163
|
-
{
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
253
|
+
<Card className={cx(styles.panelCard, styles.textCenterCard)}>
|
|
254
|
+
<div className={styles.footerActions}>
|
|
255
|
+
<Space size="large" wrap>
|
|
256
|
+
<Button
|
|
257
|
+
type="primary"
|
|
258
|
+
size="large"
|
|
259
|
+
icon={<RocketOutlined />}
|
|
260
|
+
onClick={() => window.open("https://ant.design", "_blank")}
|
|
261
|
+
>
|
|
262
|
+
查看 Ant Design 文档
|
|
263
|
+
</Button>
|
|
264
|
+
<Button
|
|
265
|
+
size="large"
|
|
266
|
+
icon={<BookOutlined />}
|
|
267
|
+
onClick={() => window.open("https://react.dev", "_blank")}
|
|
268
|
+
>
|
|
269
|
+
React 文档
|
|
270
|
+
</Button>
|
|
271
|
+
<Button
|
|
272
|
+
size="large"
|
|
273
|
+
onClick={() => setTheme(theme === "dark" ? "light" : "dark")}
|
|
274
|
+
>
|
|
275
|
+
切换主题 ({theme === "dark" ? "🌙 暗色" : "☀️ 亮色"})
|
|
276
|
+
</Button>
|
|
277
|
+
</Space>
|
|
278
|
+
<Paragraph className={styles.footerParagraph}>
|
|
279
|
+
祝你开发愉快!如有问题,请查阅文档或联系技术支持 💪
|
|
280
|
+
</Paragraph>
|
|
281
|
+
</div>
|
|
191
282
|
</Card>
|
|
192
283
|
</Flex>
|
|
193
284
|
</div>
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import React, { lazy } from "react";
|
|
2
2
|
import { createBrowserRouter, Navigate } from "react-router";
|
|
3
|
-
import
|
|
3
|
+
import GlobalProvider from "@/layout/GlobalProvider";
|
|
4
4
|
|
|
5
5
|
export const createRouter = (basename?: string) => {
|
|
6
6
|
return createBrowserRouter(
|
|
7
7
|
[
|
|
8
8
|
{
|
|
9
9
|
path: "",
|
|
10
|
-
element: <
|
|
10
|
+
element: <GlobalProvider />,
|
|
11
11
|
children: [
|
|
12
12
|
{
|
|
13
13
|
path: "/",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"strict": true, // 开启所有严格的类型检查
|
|
12
12
|
"skipLibCheck": true, // 用来控制是否在编译时进行库文件检查的
|
|
13
13
|
"target": "es5", // 目标语言的版本
|
|
14
|
-
"jsx": "react", // 控制如何在 JavaScript 文件中发出 JSX 构造。这只影响以.tsx files 开头的 JS 文件的输出
|
|
14
|
+
"jsx": "react-jsx", // 控制如何在 JavaScript 文件中发出 JSX 构造。这只影响以.tsx files 开头的 JS 文件的输出
|
|
15
15
|
"lib": ["es5", "dom", "dom.iterable", "esnext"], // TypeScript 包含内置 JS API 的一组默认类型定义(如Math),以及浏览器环境中找到的内容的类型定义(如document)
|
|
16
16
|
"paths": {
|
|
17
17
|
"@/*": ["./src/*"],
|
|
@@ -22,6 +22,22 @@
|
|
|
22
22
|
}, // 将导入重新映射到相对于baseUrlif 集或 tsconfig 文件本身的查找位置
|
|
23
23
|
"types": ["jest", "node", "@testing-library/jest-dom"]
|
|
24
24
|
},
|
|
25
|
-
"exclude": [
|
|
26
|
-
|
|
25
|
+
"exclude": [
|
|
26
|
+
"**/node_modules",
|
|
27
|
+
"**/examples",
|
|
28
|
+
"**/dist",
|
|
29
|
+
"**/fixtures",
|
|
30
|
+
"**/*.test.ts",
|
|
31
|
+
"**/*.e2e.ts",
|
|
32
|
+
"**/templates",
|
|
33
|
+
"ui"
|
|
34
|
+
], // 指定解析时应跳过的文件名或模式数组include。
|
|
35
|
+
"include": [
|
|
36
|
+
"./src/**/*",
|
|
37
|
+
"./store/**/*",
|
|
38
|
+
"./react-app-env.d.ts",
|
|
39
|
+
"config/router",
|
|
40
|
+
"**/*.test.ts",
|
|
41
|
+
"**/*.test.tsx"
|
|
42
|
+
] // 指定要包含在程序中的文件名或模式的数组。这些文件名是相对于包含该tsconfig.json文件的目录进行解析的。
|
|
27
43
|
}
|