Skip to content

Commit 13764d4

Browse files
committed
✨ update
1 parent 3c54f6e commit 13764d4

File tree

3 files changed

+145
-19
lines changed

3 files changed

+145
-19
lines changed

README.md

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
# Micro APP
2+
3+
## Install
4+
5+
```sh
6+
npm install -g @micro-app/cli
7+
```
8+
9+
or
10+
11+
```sh
12+
npm install -D @micro-app/cli
13+
```
14+
15+
## Usage
16+
17+
1. 在项目 `根目录` 初始化创建一个 `micro-app.config.js` 文件
18+
19+
```sh
20+
micro-app init
21+
```
22+
23+
2.`micro-app.config.js` 配置文件进行编辑
24+
25+
```js
26+
module.exports = {
27+
name: '@micro-app/demo', // 名称
28+
description: '', // 描述
29+
version: '0.0.1', // 版本
30+
type: '', // types 类型
31+
webpack: { // webpack 配置
32+
entry: {
33+
34+
},
35+
// output: {
36+
// path: path.resolve(__dirname, 'public'),
37+
// publicPath: '/public/',
38+
// },
39+
resolve: {
40+
alias: {},
41+
// modules: [],
42+
},
43+
plugins: [],
44+
},
45+
alias: { // 前端共享接口
46+
api: '',
47+
},
48+
shared: { // 后端共享接口
49+
config: '',
50+
// middleware: '', // koa-middleware
51+
// router: '', // koa-router
52+
},
53+
54+
micros: [ 'test' ], // 被注册的容器
55+
// micros$$test: { // 单独配置
56+
// disabled: true, // 禁用入口
57+
// },
58+
59+
// 服务配置
60+
server: {
61+
entry: '', // 服务端入口
62+
port: 8088, // 服务端口号
63+
staticBase: 'public', // 静态文件地址
64+
options: {
65+
// 服务端回调参数
66+
},
67+
},
68+
};
69+
```
70+
71+
3.`package.json` 中加载其他模块, 例如:
72+
73+
```json
74+
"dependencies": {
75+
"@micro-app/test": "git+ssh://[email protected]/micro-app.git#test"
76+
},
77+
```
78+
79+
4. 开发模式
80+
81+
```sh
82+
micro-app-dev
83+
```
84+
85+
5. Build
86+
87+
```sh
88+
micro-app-build
89+
```
90+
91+
6. 运行
92+
93+
```sh
94+
micro-app-build
95+
```
96+
97+
## 项目中使用共享接口
98+
99+
```js
100+
const api = require('@micro-demo/api');
101+
```
102+
103+
## 其他
104+
105+
- 展示所有容器
106+
107+
```js
108+
micro-app -l
109+
```
110+
111+
- 展示所有前端共享接口
112+
113+
```js
114+
micro-app -s alias
115+
```
116+
117+
- 展示所有后端共享接口
118+
119+
```js
120+
micro-app -s shared
121+
```

bin/micro-app.js

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ const shelljs = require('shelljs');
66
const chalk = require('chalk').default;
77

88
const microApp = require('@micro-app/core');
9+
const CONSTANT = microApp.CONSTANT;
910
const logger = microApp.logger;
1011

1112
const path = require('path');
@@ -37,7 +38,7 @@ if (program.list) {
3738
logger.logo(`${chalk.green('Micros List')}:`);
3839
if (micros.length) {
3940
micros.forEach(item => {
40-
logger.logo(` * ${chalk.yellow(item)}`);
41+
logger.logo(` * ${chalk.yellow(item)} --- ${chalk.gray(CONSTANT.SCOPE_NAME + '/' + item)}`);
4142
});
4243
} else {
4344
logger.logo(' [ null ] ');
@@ -54,14 +55,16 @@ if (program.show) {
5455
logger.logo(`${chalk.green('Alias List')}:`);
5556
micros.forEach(item => {
5657
const microConfig = microApp(item);
57-
const aliasName = microConfig.name;
58-
if (aliasName) {
59-
const aliasKey = aliasName[0] !== '@' ? `@${aliasName}` : aliasName;
60-
Object.keys(microConfig.alias).forEach(key => {
61-
if (microConfig.alias[key]) {
62-
logger.logo(` * ${chalk.yellow(`${aliasKey}/${key}`)}`);
63-
}
64-
});
58+
if (microConfig) {
59+
const aliasName = microConfig.name;
60+
if (aliasName) {
61+
const aliasKey = aliasName[0] !== '@' ? `@${aliasName}` : aliasName;
62+
Object.keys(microConfig.alias).forEach(key => {
63+
if (microConfig.alias[key]) {
64+
logger.logo(` * ${chalk.yellow(`${aliasKey}/${key}`)}`);
65+
}
66+
});
67+
}
6568
}
6669
});
6770
// self
@@ -82,14 +85,16 @@ if (program.show) {
8285
logger.logo(`${chalk.green('Shared List')}:`);
8386
micros.forEach(item => {
8487
const microConfig = microApp(item);
85-
const aliasName = microConfig.name;
86-
if (aliasName) {
87-
const aliasKey = aliasName[0] !== '@' ? `@${aliasName}` : aliasName;
88-
Object.keys(microConfig.shared).forEach(key => {
89-
if (microConfig.shared[key]) {
90-
logger.logo(` * ${chalk.yellow(`${aliasKey}/${key}`)}`);
91-
}
92-
});
88+
if (microConfig) {
89+
const aliasName = microConfig.name;
90+
if (aliasName) {
91+
const aliasKey = aliasName[0] !== '@' ? `@${aliasName}` : aliasName;
92+
Object.keys(microConfig.shared).forEach(key => {
93+
if (microConfig.shared[key]) {
94+
logger.logo(` * ${chalk.yellow(`${aliasKey}/${key}`)}`);
95+
}
96+
});
97+
}
9398
}
9499
});
95100
// self

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@micro-app/cli",
3-
"version": "0.0.13",
3+
"version": "0.0.15",
44
"description": "micro app cli",
55
"bin": {
66
"micro-app": "./bin/micro-app.js",
@@ -31,7 +31,7 @@
3131
"eslint-config-2o3t": "^1.1.4"
3232
},
3333
"dependencies": {
34-
"@micro-app/core": "^0.0.13",
34+
"@micro-app/core": "^0.0.16",
3535
"chalk": "^2.4.2",
3636
"commander": "^2.19.0",
3737
"opn": "^5.4.0",

0 commit comments

Comments
 (0)