Skip to content
This repository has been archived by the owner on Nov 17, 2022. It is now read-only.

Commit

Permalink
docs: add docs for plugin list (#589)
Browse files Browse the repository at this point in the history
* docs: add docs for plugin list

* docs: update store

* docs: update to ice.js3

* docs: update docs

* docs: update
  • Loading branch information
wssgcg1213 authored Oct 13, 2022
1 parent 2ad98a0 commit a14ee4d
Show file tree
Hide file tree
Showing 16 changed files with 52 additions and 47 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,6 @@ compiled
.docusaurus
.cache-loader

.env*.local
.env
*.local
.fleet/
4 changes: 0 additions & 4 deletions website/blog/00-release-3.0.0.md

This file was deleted.

10 changes: 5 additions & 5 deletions website/config/navbar.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@ module.exports = {
// label: '示例',
// to: '/docs/examples/tailwind',
// },
{
position: 'right',
label: '博客',
to: '/blog',
},
// {
// position: 'right',
// label: '博客',
// to: '/blog',
// },
{
label: '生态',
position: 'right',
Expand Down
4 changes: 2 additions & 2 deletions website/config/sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ module.exports = {
// 'guide/practice',
{
type: 'category',
label: 'ICE 指南',
label: '指南',
collapsed: false,
items: getDocsFromDir('guide/basic'),
},
{
type: 'category',
label: '最佳实践',
label: '进阶',
collapsed: false,
items: getDocsFromDir('guide/best-practices'),
},
Expand Down
14 changes: 7 additions & 7 deletions website/docs/guide/about.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ order: 1

![cover](https://gw.alicdn.com/tfs/TB1vBRYaVOWBuNjy0FiXXXFxVXa-2558-1306.jpg)

飞冰 (ICE) 是一套基于 React 的前端解决方案,围绕应用研发框架 (ICE 3) 提供了应用的构建、路由、调试等基础能力以及微前端、一体化等领域能力,同时结合可视化操作、物料复用等方案降低研发门槛。
飞冰 (ICE) 是一套基于 React 的前端解决方案,围绕应用研发框架 (ice.js 3) 提供了应用的构建、路由、调试等基础能力以及微前端、一体化等领域能力,同时结合可视化操作、物料复用等方案降低研发门槛。

## 特性 🎉

Expand All @@ -30,20 +30,20 @@ order: 1

## 常见问题 📝

### 与直接使用 Webpack 相比,使用 ICE 有什么优势?
### 与直接使用 Webpack 相比,使用 ice.js 有什么优势?

Webpack 只提供了基础的构建能力,ICE 在此基础上扩展了很多能力:
Webpack 只提供了基础的构建能力,ice.js 在此基础上扩展了很多能力:

- 默认集成好的框架能力,无需再引入繁冗的构建插件和配置
- 不止是构建,更有面向业务领域的最佳实践,如路由、目录组织、状态管理等
- 让很多业务接入成本高的能力可以开箱即用,如 SSR/SSG、微前端、一体化,基于原始的 Webpack 建设这些能力需要付出很高成本
- 通过插件化让以上这些能力可以被扩展以及跨项目复用,尽可能保证不同项目的一致性

### 我正在使用 icejs (ICE 2),需要升级到 ICE 3 吗?
### 我正在使用 ice.js 2,需要升级到 ice.js 3 吗?

ICE 3 相比之前的版本,增加了更多对移动端能力的优化和适配,同时提升了页面性能体验。对于新项目推荐 ICE 3 进行开发,对于历史项目原先的 icejs 依然是可用的,并且我们仍会持续修复已知的问题。
ice.js 3 相比之前的版本,增加了更多对移动端能力的优化和适配,同时提升了页面性能体验。对于新项目推荐 ice.js 3 进行开发,对于历史项目原先的 ice.js 2 依然是可用的,并且我们仍会持续修复已知的问题。

如果你的页面会同时运行在移动端和桌面端,使用 ICE 3 可能会是更好的选择,亦或者是你对 ICE 3 提供的更新的构建工具链、更优更多的解决方案感兴趣,你都可以选择升级到 ICE 3。
如果你的页面会同时运行在移动端和桌面端,使用 ice.js 3 可能会是更好的选择,亦或者是你对 ice.js 3 提供的更新的构建工具链、更优更多的解决方案感兴趣,你都可以选择升级到 ice.js 3。

### 使用飞冰 (ICE) 是否需要具备一定的前端基础?

Expand All @@ -55,7 +55,7 @@ ICE 3 相比之前的版本,增加了更多对移动端能力的优化和适

### 飞冰的浏览器兼容策略是怎样的?

应用框架 ICE 默认使用的是 React 18,你可以查看 React 18 官方说明[对 JavaScript 环境的要求](https://zh-hans.reactjs.org/docs/javascript-environment-requirements.html)。如果你支持旧的浏览器和设备,可能需要引入对应的 Polyfill。
应用框架 ice.js 默认使用的是 React 18,你可以查看 React 18 官方说明[对 JavaScript 环境的要求](https://zh-hans.reactjs.org/docs/javascript-environment-requirements.html)。如果你支持旧的浏览器和设备,可能需要引入对应的 Polyfill。

此外,飞冰官方 React 物料默认使用 React 16+ 进行开发,所以通常情况下这些物料在 ICE 中是可以正常运行的,如果你遇到任何问题,也可以通过 [Issue](https://github.com/alibaba/ice/issues) 或其它方式反馈给我们。

Expand Down
2 changes: 1 addition & 1 deletion website/docs/guide/basic/config.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ chrome 55
- 类型:`Record<string, string | false>`
- 默认值:`{ "@": "./src/" }`

icejs 默认内置常用的 alias 规则,因此项目大多数时候不需要配置即可更加简单的导入模块了:
ice.js 默认内置常用的 alias 规则,因此项目大多数时候不需要配置即可更加简单的导入模块了:

```diff
-import CustomTips from '../../../components/CustomTips';
Expand Down
8 changes: 4 additions & 4 deletions website/docs/guide/basic/directory.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,19 +56,19 @@ TypeScript 编译所需的配置文件。

### app.ts

项目的入口文件,用于对应用进行全局运行时配置,包括路由、添加 Provider 等。详见[应用入口](/docs/guide/basic/app)
项目的入口文件,用于对应用进行全局运行时配置,包括路由、添加 Provider 等。详见[应用入口](./app)

### document.tsx

HTML 模板,使用 JSX 语法来描述,与 `index.html` 类似用于生成 HTML 产物。详见 [Document](/docs/guide/basic/document)
HTML 模板,使用 JSX 语法来描述,与 `index.html` 类似用于生成 HTML 产物。详见 [Document](./document)

### global.[css|scss|less]

全局的样式配置,框架默认会引入该文件。详见[样式方案](/docs/guide/basic/style)
全局的样式配置,框架默认会引入该文件。详见[样式方案](./style)

### pages 目录

存放路由组件的目录。ICE 使用约定式路由,会自动根据文件生成路由规则,详见[路由](/docs/guide/basic/router)
存放路由组件的目录。ICE 使用约定式路由,会自动根据文件生成路由规则,详见[路由](./router)

### components 目录

Expand Down
4 changes: 2 additions & 2 deletions website/docs/guide/best-practices/deploy.md
Original file line number Diff line number Diff line change
Expand Up @@ -163,13 +163,13 @@ public String index(Model model) {

### 静态资源在非根目录或 CDN

如果你的 js、css、图片、字体等资源不在,这时需要配置 [publicPath](/docs/guide/basic/config#publicpath) 的值为你的静态资源所在的路径。
如果你的 js、css、图片、字体等资源不在,这时需要配置 [publicPath](../basic/config#publicpath) 的值为你的静态资源所在的路径。

### 部署的 HTML 在非根目录

假设你本地开发的时候有一个路由是 `/home`,生产环境下你把应用部署到 `/abc/` 下,然后访问 `/abc/home`,就会出现路由不匹配,显示空白页面的情况。

这时你需要配置 [basename](/docs/guide/basic/app#basename) 解决。
这时你需要配置 [basename](../basic/app#basename) 解决。

```ts title="./src/app.ts"
import { defineAppConfig } from 'ice';
Expand Down
14 changes: 7 additions & 7 deletions website/docs/guide/best-practices/unit-test.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,24 @@ title: 单元测试
order: 8
---

icejs 不耦合任何一个测试框架,开发者可自由选择。目前提供开箱即用的 [jest](https://jestjs.io/)[vitest](https://vitest.dev/) 配置,以便快速开始单元测试。

<details>
<details open>
<summary>示例</summary>
<ul>
<li>
<a href="https://github.com/ice-lab/ice-next/tree/master/examples/with-jest" target="_blank" rel="noopener noreferrer">
icejs with jest
with-jest
</a>
</li>
<li>
<a href="https://github.com/ice-lab/ice-next/tree/master/examples/with-vitest" target="_blank" rel="noopener noreferrer">
icejs with vitest
with-vitest
</a>
</li>
</ul>
</details>

ice.js 不耦合任何一个测试框架,开发者可自由选择。目前提供开箱即用的 [jest](https://jestjs.io/)[vitest](https://vitest.dev/) 配置,以便快速开始单元测试。

## Jest

### 依赖安装
Expand All @@ -41,7 +41,7 @@ import { defineJestConfig } from '@ice/app';
export default defineJestConfig({});
```

`defineJestConfig` 方法返回的是 icejs 默认配置好的 Jest 配置,支持传入自定义的 [Jest 配置](https://jestjs.io/docs/configuration)
`defineJestConfig` 方法返回的是 ice.js 默认配置好的 Jest 配置,支持传入自定义的 [Jest 配置](https://jestjs.io/docs/configuration)

`defineJestConfig` 入参支持两种写法:

Expand Down Expand Up @@ -169,7 +169,7 @@ import { defineVitestConfig } from '@ice/app';

export default defineVitestConfig({});
```
`defineVitestConfig` 方法返回的是 icejs 默认配置好的 vitest 配置,支持传入自定义的 [vitest 配置](https://vitest.dev/config/)
`defineVitestConfig` 方法返回的是 ice.js 默认配置好的 vitest 配置,支持传入自定义的 [vitest 配置](https://vitest.dev/config/)

defineVitestConfig 入参支持三种写法:

Expand Down
7 changes: 3 additions & 4 deletions website/docs/guide/plugins/auth.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
---
title: 权限管理
order: 4
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

<details>
<details open>
<summary>示例</summary>
<ul>
<li>
<a href="https://github.com/ice-lab/ice-next/tree/master/examples/basic-project" target="_blank" rel="noopener noreferrer">
Basic Project
basic-project
</a>
</li>
</ul>
Expand All @@ -23,7 +22,7 @@ import TabItem from '@theme/TabItem';
- 操作权限:页面中的某些按钮或组件针对无权限的用户直接隐藏
- 接口权限:当用户通过操作调用没有权限的接口时跳转到无权限页面

icejs 提供 `@ice/plugin-auth` 插件,帮助用户更简单管理前两种类型的权限。接口权限管理请见数据请求文档。
ice.js 提供 `@ice/plugin-auth` 插件,帮助用户更简单管理前两种类型的权限。接口权限管理请见数据请求文档。

## 安装插件

Expand Down
1 change: 0 additions & 1 deletion website/docs/guide/plugins/css-assets-local.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
---
title: CSS 资源本地化
order: 2
---

组件代码里有可能会依赖一些远程 CDN 的字体文件等,某些情况下网站运行时可能访问不了。该插件提供在构建部署时将 CSS 中的网络资源本地化能力,例如字体文件等。
Expand Down
2 changes: 1 addition & 1 deletion website/docs/guide/plugins/plugin-dev.md
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,7 @@ export default runtime;

appContext 上包含框架相关上下文配置信息,主要包括:

- `appConfig`:应用配置,详细内容可以参考 [应用入口](/)
- `appConfig`:应用配置,详细内容可以参考 [应用入口](../basic/app)
- `assetsManifest`:应用资讯配置信息
- `routesData`:路由信息

Expand Down
12 changes: 11 additions & 1 deletion website/docs/guide/plugins/plugin-list.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,14 @@ title: 插件列表
order: 2
---

插件列表 @TODO
## [@ice/plugin-auth](./auth)

提供权限管理方案。

## [@ice/plugin-store](./store)

提供基于单向数据流的数据管理方案。

## [@ice/plugin-css-assets-local](./css-assets-local)

提供将 CSS 中的网络资源本地化的能力。
9 changes: 4 additions & 5 deletions website/docs/guide/plugins/store.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
---
title: 状态管理
order: 3
---

icejs 基于 [icestore](https://github.com/ice-lab/icestore) ,提供主流的状态管理解决方案,以更好管理复杂的状态管理逻辑。

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

<details>
<details open>
<summary>示例</summary>
<ul>
<li>
Expand All @@ -19,6 +16,8 @@ import TabItem from '@theme/TabItem';
</ul>
</details>

ice.js 基于 [icestore](https://github.com/ice-lab/icestore) ,提供主流的状态管理解决方案,以更好管理复杂的状态管理逻辑。

## 开启状态管理

安装插件:
Expand Down Expand Up @@ -261,7 +260,7 @@ export const store = defineStoreConfig(async () => {
initialStates: {
// initialStates 键值与 createStore 的第一个入参键值保持一致
user: {
name: 'icejs',
name: 'ice.js',
},
counter: {
count: 1
Expand Down
2 changes: 1 addition & 1 deletion website/docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const config = {
themeConfig: {
announcementBar: {
id: 'announcementBar-2',
content: 'ICE 3 Beta,不仅是 PC,更适配移动端能力,<a href="/docs/guide/about">更多</a>',
content: 'ice.js 3,不仅是 PC,更适配移动端能力,<a href="/docs/guide/about">更多</a>',
isCloseable: true,
},
navbar,
Expand Down
2 changes: 1 addition & 1 deletion website/src/components/Feature/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ const data = [
function Feature() {
return (
<AreaWrapper
title={'基于 React 的应用研发框架 ICE 3'}
title={'基于 React 的应用研发框架 ice.js 3'}
decs={'开箱即用的研发框架,内置工程配置、状态管理、数据请求、权限管理等最佳实践,让开发者可以更加专注于业务逻辑'}
contentStyle={styles.container}
isBlock
Expand Down

0 comments on commit a14ee4d

Please sign in to comment.