@lytjs/cli 4.0.3 → 4.0.5
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/README.md +227 -0
- package/dist/index.js +413 -121
- package/dist/index.mjs +413 -121
- package/package.json +1 -1
package/README.md
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
# @lytjs/cli
|
|
2
|
+
|
|
3
|
+
Lyt.js 官方命令行工具,提供项目创建、开发服务器和生产构建功能。
|
|
4
|
+
|
|
5
|
+
## 安装
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# 全局安装
|
|
9
|
+
npm install -g @lytjs/cli
|
|
10
|
+
|
|
11
|
+
# 或使用 pnpm
|
|
12
|
+
pnpm add -g @lytjs/cli
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 快速开始
|
|
16
|
+
|
|
17
|
+
### 创建新项目
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
lyt create my-app
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### 启动开发服务器
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
cd my-app
|
|
27
|
+
lyt dev
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
开发服务器默认运行在 http://localhost:3000
|
|
31
|
+
|
|
32
|
+
### 构建生产版本
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
lyt build
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## 命令
|
|
39
|
+
|
|
40
|
+
### `lyt create <name> [options]`
|
|
41
|
+
|
|
42
|
+
创建一个新的 Lyt.js 项目
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
# 基本用法
|
|
46
|
+
lyt create my-app
|
|
47
|
+
|
|
48
|
+
# 选择模板
|
|
49
|
+
lyt create my-app --template spa
|
|
50
|
+
lyt create my-app --template ssr
|
|
51
|
+
lyt create my-app --template ssg
|
|
52
|
+
|
|
53
|
+
# 使用 TypeScript
|
|
54
|
+
lyt create my-app --typescript
|
|
55
|
+
|
|
56
|
+
# 包含路由
|
|
57
|
+
lyt create my-app --router
|
|
58
|
+
|
|
59
|
+
# 包含状态管理
|
|
60
|
+
lyt create my-app --store
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**选项:**
|
|
64
|
+
|
|
65
|
+
- `--template, -t`: 项目模板类型 (spa|ssr|ssg),默认: spa
|
|
66
|
+
- `--typescript, --ts`: 使用 TypeScript,默认: true
|
|
67
|
+
- `--router`: 包含路由,默认: true
|
|
68
|
+
- `--store`: 包含状态管理,默认: true
|
|
69
|
+
- `--eslint`: 包含 ESLint 配置,默认: false
|
|
70
|
+
|
|
71
|
+
### `lyt dev [options]`
|
|
72
|
+
|
|
73
|
+
启动开发服务器
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# 基本用法
|
|
77
|
+
lyt dev
|
|
78
|
+
|
|
79
|
+
# 指定端口
|
|
80
|
+
lyt dev --port 8080
|
|
81
|
+
|
|
82
|
+
# 指定项目目录
|
|
83
|
+
lyt dev --root ./src
|
|
84
|
+
|
|
85
|
+
# 禁用热更新
|
|
86
|
+
lyt dev --no-hmr
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
**选项:**
|
|
90
|
+
|
|
91
|
+
- `--port, -p`: 端口号,默认: 3000
|
|
92
|
+
- `--root, -r`: 项目根目录,默认: .
|
|
93
|
+
- `--hmr`: 启用热更新,默认: true
|
|
94
|
+
- `--no-hmr`: 禁用热更新
|
|
95
|
+
|
|
96
|
+
**功能特性:**
|
|
97
|
+
|
|
98
|
+
- 🚀 快速启动
|
|
99
|
+
- 🔥 热模块替换 (HMR)
|
|
100
|
+
- 📦 实时 TypeScript 编译
|
|
101
|
+
- 🔄 自动刷新
|
|
102
|
+
- 📁 静态文件服务
|
|
103
|
+
- 🔌 代理支持
|
|
104
|
+
|
|
105
|
+
### `lyt build [options]`
|
|
106
|
+
|
|
107
|
+
构建生产版本
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
# 基本用法
|
|
111
|
+
lyt build
|
|
112
|
+
|
|
113
|
+
# 指定输出目录
|
|
114
|
+
lyt build --outDir ./dist
|
|
115
|
+
|
|
116
|
+
# 生成源码映射
|
|
117
|
+
lyt build --sourcemap
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
**选项:**
|
|
121
|
+
|
|
122
|
+
- `--outDir, -o`: 输出目录,默认: dist
|
|
123
|
+
- `--sourcemap, -s`: 生成源码映射,默认: false
|
|
124
|
+
- `--minify`: 压缩代码,默认: true
|
|
125
|
+
- `--no-minify`: 不压缩代码
|
|
126
|
+
|
|
127
|
+
## 项目结构
|
|
128
|
+
|
|
129
|
+
创建的项目结构如下:
|
|
130
|
+
|
|
131
|
+
```
|
|
132
|
+
my-app/
|
|
133
|
+
├── package.json
|
|
134
|
+
├── tsconfig.json # 如果使用 TypeScript
|
|
135
|
+
├── lyt.config.ts # Lyt.js 配置文件
|
|
136
|
+
├── index.html
|
|
137
|
+
├── src/
|
|
138
|
+
│ ├── main.ts # 入口文件
|
|
139
|
+
│ ├── App.lyt # 根组件
|
|
140
|
+
│ ├── components/
|
|
141
|
+
│ │ └── Header.ts # 组件示例
|
|
142
|
+
│ ├── pages/
|
|
143
|
+
│ │ ├── index.ts # 首页
|
|
144
|
+
│ │ └── about.ts # 关于页
|
|
145
|
+
│ ├── router/
|
|
146
|
+
│ │ └── index.ts # 路由配置 (可选)
|
|
147
|
+
│ ├── store/
|
|
148
|
+
│ │ └── index.ts # 状态管理 (可选)
|
|
149
|
+
│ └── styles/
|
|
150
|
+
│ └── main.css
|
|
151
|
+
└── public/
|
|
152
|
+
└── favicon.svg
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## 配置文件
|
|
156
|
+
|
|
157
|
+
项目根目录下的 `lyt.config.ts` 或 `lyt.config.js`:
|
|
158
|
+
|
|
159
|
+
```typescript
|
|
160
|
+
import { defineConfig } from '@lytjs/cli';
|
|
161
|
+
|
|
162
|
+
export default defineConfig({
|
|
163
|
+
// 开发服务器配置
|
|
164
|
+
dev: {
|
|
165
|
+
port: 3000,
|
|
166
|
+
host: 'localhost',
|
|
167
|
+
open: true,
|
|
168
|
+
},
|
|
169
|
+
|
|
170
|
+
// 构建配置
|
|
171
|
+
build: {
|
|
172
|
+
outDir: 'dist',
|
|
173
|
+
sourcemap: false,
|
|
174
|
+
minify: true,
|
|
175
|
+
},
|
|
176
|
+
|
|
177
|
+
// 代理配置
|
|
178
|
+
proxy: {
|
|
179
|
+
'/api': {
|
|
180
|
+
target: 'http://localhost:8080',
|
|
181
|
+
changeOrigin: true,
|
|
182
|
+
rewrite: (path) => path.replace(/^\/api/, ''),
|
|
183
|
+
},
|
|
184
|
+
},
|
|
185
|
+
});
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
## 示例
|
|
189
|
+
|
|
190
|
+
### 基础项目
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
lyt create my-app --template spa
|
|
194
|
+
cd my-app
|
|
195
|
+
lyt dev
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### SSR 项目
|
|
199
|
+
|
|
200
|
+
```bash
|
|
201
|
+
lyt create my-app --template ssr
|
|
202
|
+
cd my-app
|
|
203
|
+
lyt dev
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
### 自定义端口
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
lyt dev --port 4000
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
## 命令帮助
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
lyt --help
|
|
216
|
+
lyt create --help
|
|
217
|
+
lyt dev --help
|
|
218
|
+
lyt build --help
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
## 更新日志
|
|
222
|
+
|
|
223
|
+
参见根目录的 CHANGELOG.md
|
|
224
|
+
|
|
225
|
+
## License
|
|
226
|
+
|
|
227
|
+
MIT
|