@modern-js/main-doc 2.4.0 → 2.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (280) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/LICENSE +0 -123
  3. package/README.md +26 -0
  4. package/en/apis/app/commands/_category_.json +1 -4
  5. package/en/apis/app/commands/new.mdx +11 -10
  6. package/en/apis/app/commands/test.mdx +1 -1
  7. package/en/apis/app/hooks/_category_.json +1 -4
  8. package/en/apis/app/hooks/api/framework/lambda.mdx +1 -1
  9. package/en/apis/app/hooks/api/functions/api.mdx +1 -1
  10. package/en/apis/app/hooks/server/index_.mdx +2 -1
  11. package/en/apis/app/hooks/src/pages.mdx +7 -7
  12. package/en/apis/app/hooks/src/routes.mdx +1 -1
  13. package/en/apis/app/runtime/_category_.json +1 -5
  14. package/en/apis/app/runtime/app/define-config.mdx +2 -2
  15. package/en/apis/app/runtime/core/bootstrap.mdx +1 -1
  16. package/en/apis/app/runtime/core/create-app.mdx +2 -2
  17. package/en/apis/app/runtime/core/use-loader.mdx +4 -4
  18. package/en/apis/app/runtime/core/use-module-apps.mdx +2 -2
  19. package/en/apis/app/runtime/model/Provider.mdx +2 -2
  20. package/en/apis/app/runtime/model/auto-actions.mdx +2 -2
  21. package/en/apis/app/runtime/model/connect.mdx +5 -5
  22. package/en/apis/app/runtime/model/create-app.mdx +9 -9
  23. package/en/apis/app/runtime/model/create-store.mdx +3 -3
  24. package/en/apis/app/runtime/model/handle-effect.mdx +2 -2
  25. package/en/apis/app/runtime/model/model_.mdx +1 -1
  26. package/en/apis/app/runtime/model/use-local-model.mdx +1 -1
  27. package/en/apis/app/runtime/model/use-model.mdx +1 -1
  28. package/en/apis/app/runtime/model/use-static-model.mdx +4 -4
  29. package/en/apis/app/runtime/model/use-store.mdx +1 -1
  30. package/en/apis/app/runtime/router/router.mdx +1 -1
  31. package/en/apis/app/runtime/ssr/pre-render.mdx +1 -1
  32. package/en/apis/app/runtime/testing/render.mdx +1 -1
  33. package/en/apis/app/runtime/testing/renderApp.mdx +1 -1
  34. package/en/apis/app/runtime/utility/css-in-js.mdx +1 -1
  35. package/en/apis/app/runtime/utility/loadable.mdx +1 -1
  36. package/en/apis/app/runtime/web-server/hook.mdx +5 -5
  37. package/en/apis/app/runtime/web-server/middleware.mdx +6 -6
  38. package/en/components/global-proxy-config.mdx +3 -3
  39. package/en/configure/app/bff/_category_.json +4 -0
  40. package/en/configure/app/builder-plugins.mdx +3 -3
  41. package/en/configure/app/deploy/_category_.json +4 -0
  42. package/en/configure/app/dev/_category_.json +4 -0
  43. package/en/configure/app/dev/asset-prefix.mdx +1 -1
  44. package/en/configure/app/dev/hmr.mdx +1 -1
  45. package/en/configure/app/dev/https.mdx +1 -1
  46. package/en/configure/app/dev/port.mdx +1 -1
  47. package/en/configure/app/dev/progress-bar.mdx +1 -1
  48. package/en/configure/app/dev/start-url.mdx +1 -1
  49. package/en/configure/app/experiments/_category_.json +4 -0
  50. package/en/configure/app/experiments/lazy-compilation.mdx +1 -1
  51. package/en/configure/app/html/_category_.json +4 -0
  52. package/en/configure/app/html/app-icon.mdx +1 -1
  53. package/en/configure/app/html/crossorigin.mdx +1 -1
  54. package/en/configure/app/html/disable-html-folder.mdx +1 -1
  55. package/en/configure/app/html/favicon-by-entries.mdx +1 -1
  56. package/en/configure/app/html/favicon.mdx +1 -1
  57. package/en/configure/app/html/inject-by-entries.mdx +1 -1
  58. package/en/configure/app/html/inject.mdx +1 -1
  59. package/en/configure/app/html/meta-by-entries.mdx +1 -1
  60. package/en/configure/app/html/meta.mdx +1 -1
  61. package/en/configure/app/html/mount-id.mdx +1 -1
  62. package/en/configure/app/html/tags-by-entries.mdx +1 -1
  63. package/en/configure/app/html/tags.mdx +1 -1
  64. package/en/configure/app/html/template-by-entries.mdx +1 -1
  65. package/en/configure/app/html/template-parameters-by-entries.mdx +1 -1
  66. package/en/configure/app/html/template-parameters.mdx +1 -1
  67. package/en/configure/app/html/template.mdx +1 -1
  68. package/en/configure/app/html/title-by-entries.mdx +1 -1
  69. package/en/configure/app/html/title.mdx +1 -1
  70. package/en/configure/app/output/_category_.json +4 -0
  71. package/en/configure/app/output/asset-prefix.mdx +1 -1
  72. package/en/configure/app/output/assets-retry.mdx +1 -1
  73. package/en/configure/app/output/charset.mdx +1 -1
  74. package/en/configure/app/output/clean-dist-path.mdx +1 -1
  75. package/en/configure/app/output/convert-to-rem.mdx +1 -1
  76. package/en/configure/app/output/copy.mdx +1 -1
  77. package/en/configure/app/output/css-module-local-ident-name.mdx +1 -1
  78. package/en/configure/app/output/data-uri-limit.mdx +1 -1
  79. package/en/configure/app/output/disable-css-extract.mdx +1 -1
  80. package/en/configure/app/output/disable-css-module-extension.mdx +1 -1
  81. package/en/configure/app/output/disable-filename-hash.mdx +1 -1
  82. package/en/configure/app/output/disable-inline-runtime-chunk.mdx +1 -1
  83. package/en/configure/app/output/disable-minimize.mdx +1 -1
  84. package/en/configure/app/output/disable-source-map.mdx +1 -1
  85. package/en/configure/app/output/disable-ts-checker.mdx +1 -1
  86. package/en/configure/app/output/dist-path.mdx +1 -1
  87. package/en/configure/app/output/enable-asset-fallback.mdx +1 -1
  88. package/en/configure/app/output/enable-asset-manifest.mdx +1 -1
  89. package/en/configure/app/output/enable-css-module-tsdeclaration.mdx +1 -1
  90. package/en/configure/app/output/enable-inline-scripts.mdx +1 -1
  91. package/en/configure/app/output/enable-inline-styles.mdx +1 -1
  92. package/en/configure/app/output/enable-latest-decorators.mdx +1 -1
  93. package/en/configure/app/output/externals.mdx +1 -1
  94. package/en/configure/app/output/filename.mdx +1 -1
  95. package/en/configure/app/output/legal-comments.mdx +1 -1
  96. package/en/configure/app/output/override-browserslist.mdx +1 -1
  97. package/en/configure/app/output/polyfill.mdx +1 -1
  98. package/en/configure/app/output/ssg.mdx +2 -2
  99. package/en/configure/app/output/svg-default-export.mdx +1 -1
  100. package/en/configure/app/performance/_category_.json +4 -0
  101. package/en/configure/app/performance/build-cache.mdx +1 -1
  102. package/en/configure/app/performance/bundle-analyze.mdx +1 -1
  103. package/en/configure/app/performance/chunk-split.mdx +1 -1
  104. package/en/configure/app/performance/print-file-size.mdx +1 -1
  105. package/en/configure/app/performance/profile.mdx +1 -1
  106. package/en/configure/app/performance/remove-console.mdx +1 -1
  107. package/en/configure/app/performance/remove-moment-locale.mdx +1 -1
  108. package/en/configure/app/plugins.mdx +1 -1
  109. package/en/configure/app/runtime/_category_.json +4 -0
  110. package/en/configure/app/runtime/intro.mdx +2 -2
  111. package/en/configure/app/security/_category_.json +4 -0
  112. package/en/configure/app/security/check-syntax.mdx +1 -1
  113. package/en/configure/app/security/sri.mdx +1 -1
  114. package/en/configure/app/server/_category_.json +4 -0
  115. package/en/configure/app/server/base-url.mdx +3 -3
  116. package/en/configure/app/server/enable-framework-ext.mdx +1 -1
  117. package/en/configure/app/server/ssr-by-entries.mdx +1 -1
  118. package/en/configure/app/source/_category_.json +4 -0
  119. package/en/configure/app/source/alias.mdx +1 -1
  120. package/en/configure/app/source/compile-js-data-uri.mdx +1 -1
  121. package/en/configure/app/source/define.mdx +1 -1
  122. package/en/configure/app/source/design-system.mdx +5 -5
  123. package/en/configure/app/source/entries.mdx +3 -3
  124. package/en/configure/app/source/exclude.mdx +1 -1
  125. package/en/configure/app/source/global-vars.mdx +1 -1
  126. package/en/configure/app/source/include.mdx +1 -1
  127. package/en/configure/app/source/module-scopes.mdx +1 -1
  128. package/en/configure/app/source/pre-entry.mdx +1 -1
  129. package/en/configure/app/source/resolve-extension-prefix.mdx +1 -1
  130. package/en/configure/app/source/resolve-main-fields.mdx +1 -1
  131. package/en/configure/app/testing/_category_.json +4 -0
  132. package/en/configure/app/tools/_category_.json +4 -0
  133. package/en/configure/app/tools/autoprefixer.mdx +1 -1
  134. package/en/configure/app/tools/babel.mdx +1 -1
  135. package/en/configure/app/tools/css-extract.mdx +1 -1
  136. package/en/configure/app/tools/css-loader.mdx +1 -1
  137. package/en/configure/app/tools/dev-server.mdx +1 -1
  138. package/en/configure/app/tools/html-plugin.mdx +1 -1
  139. package/en/configure/app/tools/inspector.mdx +1 -1
  140. package/en/configure/app/tools/less.mdx +1 -1
  141. package/en/configure/app/tools/minify-css.mdx +1 -1
  142. package/en/configure/app/tools/postcss.mdx +1 -1
  143. package/en/configure/app/tools/pug.mdx +1 -1
  144. package/en/configure/app/tools/rspack.mdx +13 -0
  145. package/en/configure/app/tools/sass.mdx +1 -1
  146. package/en/configure/app/tools/style-loader.mdx +1 -1
  147. package/en/configure/app/tools/styled-components.mdx +1 -1
  148. package/en/configure/app/tools/tailwindcss.mdx +1 -1
  149. package/en/configure/app/tools/terser.mdx +1 -1
  150. package/en/configure/app/tools/ts-checker.mdx +1 -1
  151. package/en/configure/app/tools/ts-loader.mdx +1 -1
  152. package/en/configure/app/tools/webpack-chain.mdx +1 -1
  153. package/en/configure/app/tools/webpack.mdx +1 -1
  154. package/en/configure/app/usage.mdx +1 -1
  155. package/en/guides/advanced-features/_category_.json +2 -2
  156. package/en/guides/advanced-features/bff/bff-proxy.mdx +1 -1
  157. package/en/guides/advanced-features/bff/frameworks.mdx +1 -1
  158. package/en/guides/advanced-features/bff/function.mdx +3 -3
  159. package/en/guides/advanced-features/code-split.mdx +2 -2
  160. package/en/guides/advanced-features/compatibility.mdx +2 -3
  161. package/en/guides/advanced-features/eslint.mdx +4 -4
  162. package/en/guides/advanced-features/low-level.mdx +1 -1
  163. package/en/guides/advanced-features/ssg.mdx +4 -5
  164. package/en/guides/advanced-features/ssr.mdx +3 -3
  165. package/en/guides/advanced-features/testing.mdx +4 -5
  166. package/en/guides/advanced-features/web-server.mdx +0 -1
  167. package/en/guides/basic-features/alias.mdx +1 -1
  168. package/en/guides/basic-features/data-fetch.mdx +21 -8
  169. package/en/guides/basic-features/env-vars.mdx +1 -1
  170. package/en/guides/basic-features/html.mdx +11 -11
  171. package/en/guides/basic-features/mock.mdx +21 -1
  172. package/en/guides/basic-features/proxy.mdx +2 -2
  173. package/en/guides/basic-features/routes.mdx +6 -8
  174. package/en/guides/{basic-features → concept}/builder.mdx +1 -1
  175. package/en/guides/concept/entries.mdx +11 -11
  176. package/en/guides/css/_category_.json +5 -0
  177. package/en/guides/{basic-features/css → css}/css-in-js.mdx +0 -0
  178. package/en/guides/{basic-features/css → css}/css-modules.mdx +0 -0
  179. package/en/guides/{basic-features/css → css}/less-sass.mdx +1 -1
  180. package/en/guides/{basic-features/css → css}/postcss.mdx +0 -0
  181. package/en/guides/{basic-features/css → css}/tailwindcss.mdx +0 -0
  182. package/en/guides/get-started/introduction.mdx +34 -0
  183. package/en/guides/get-started/quick-start.mdx +2 -2
  184. package/en/guides/get-started/upgrade.mdx +2 -1
  185. package/en/guides/topic-detail/_category_.json +2 -2
  186. package/en/guides/topic-detail/framework-plugin/hook.mdx +1 -1
  187. package/en/guides/topic-detail/generator/plugin/api/hook/onForged.mdx +1 -1
  188. package/en/guides/topic-detail/generator/plugin/develop.mdx +1 -1
  189. package/en/guides/topic-detail/micro-frontend/c02-development.mdx +128 -61
  190. package/en/guides/topic-detail/micro-frontend/c03-main-app.mdx +72 -41
  191. package/en/guides/topic-detail/micro-frontend/c05-mixed-stack.mdx +1 -1
  192. package/en/guides/topic-detail/model/auto-actions.mdx +1 -1
  193. package/en/guides/topic-detail/model/define-model.mdx +1 -1
  194. package/en/guides/topic-detail/model/manage-effects.mdx +1 -1
  195. package/en/guides/topic-detail/model/model-communicate.mdx +1 -1
  196. package/en/guides/topic-detail/model/quick-start.mdx +2 -2
  197. package/en/guides/topic-detail/model/test-model.mdx +1 -1
  198. package/en/guides/topic-detail/model/use-model.mdx +3 -3
  199. package/en/guides/troubleshooting/_category_.json +2 -2
  200. package/en/guides/troubleshooting/cli.mdx +1 -1
  201. package/en/index.md +1 -1
  202. package/en/tutorials/first-app/_category_.json +1 -1
  203. package/en/tutorials/first-app/c01-start.mdx +0 -1
  204. package/en/tutorials/first-app/c03-css.mdx +1 -2
  205. package/en/tutorials/first-app/c06-model.mdx +1 -1
  206. package/en/tutorials/first-app/c07-container.mdx +1 -1
  207. package/en/tutorials/first-app/c08-entries.mdx +1 -2
  208. package/en/tutorials/foundations/introduction.mdx +17 -34
  209. package/package.json +3 -3
  210. package/scripts/config.ts +3 -1
  211. package/scripts/summary.en.json +1 -1
  212. package/scripts/summary.zh.json +1 -1
  213. package/zh/apis/app/commands/_category_.json +1 -4
  214. package/zh/apis/app/hooks/_category_.json +1 -4
  215. package/zh/apis/app/hooks/src/pages.mdx +1 -1
  216. package/zh/apis/app/hooks/src/routes.mdx +1 -1
  217. package/zh/apis/app/runtime/_category_.json +1 -5
  218. package/zh/apis/app/runtime/core/create-app.mdx +1 -1
  219. package/zh/apis/app/runtime/core/use-module-apps.mdx +81 -40
  220. package/zh/apis/app/runtime/model/Provider.mdx +2 -2
  221. package/zh/apis/app/runtime/model/create-app.mdx +7 -7
  222. package/zh/apis/app/runtime/model/create-store.mdx +2 -2
  223. package/zh/apis/app/runtime/model/use-local-model.mdx +1 -1
  224. package/zh/apis/app/runtime/model/use-static-model.mdx +1 -1
  225. package/zh/apis/app/runtime/model/use-store.mdx +1 -1
  226. package/zh/apis/app/runtime/testing/renderApp.mdx +1 -1
  227. package/zh/components/micro-runtime-config.mdx +6 -6
  228. package/zh/components/release-note.mdx +1 -1
  229. package/zh/configure/app/builder-plugins.mdx +3 -3
  230. package/zh/configure/app/plugins.mdx +1 -1
  231. package/zh/configure/app/server/ssr-by-entries.mdx +1 -1
  232. package/zh/configure/app/tools/rspack.mdx +13 -0
  233. package/zh/configure/app/usage.mdx +1 -1
  234. package/zh/guides/advanced-features/_category_.json +2 -6
  235. package/zh/guides/advanced-features/compatibility.mdx +0 -1
  236. package/zh/guides/advanced-features/ssg.mdx +0 -1
  237. package/zh/guides/advanced-features/testing.mdx +0 -1
  238. package/zh/guides/advanced-features/web-server.mdx +0 -1
  239. package/zh/guides/basic-features/_category_.json +1 -5
  240. package/zh/guides/basic-features/alias.mdx +1 -1
  241. package/zh/guides/basic-features/data-fetch.mdx +35 -26
  242. package/zh/guides/basic-features/html.mdx +10 -9
  243. package/zh/guides/basic-features/mock.mdx +20 -0
  244. package/zh/guides/basic-features/routes.mdx +15 -10
  245. package/zh/guides/{basic-features → concept}/builder.mdx +2 -2
  246. package/zh/guides/concept/entries.mdx +11 -11
  247. package/zh/guides/css/_category_.json +5 -0
  248. package/zh/guides/{basic-features/css → css}/css-in-js.mdx +0 -0
  249. package/zh/guides/{basic-features/css → css}/css-modules.mdx +0 -0
  250. package/zh/guides/{basic-features/css → css}/less-sass.mdx +1 -1
  251. package/zh/guides/{basic-features/css → css}/postcss.mdx +5 -4
  252. package/zh/guides/{basic-features/css → css}/tailwindcss.mdx +0 -1
  253. package/zh/guides/get-started/introduction.mdx +31 -0
  254. package/zh/guides/get-started/quick-start.mdx +2 -3
  255. package/zh/guides/get-started/upgrade.mdx +2 -1
  256. package/zh/guides/topic-detail/_category_.json +2 -2
  257. package/zh/guides/topic-detail/generator/plugin/api/input/addInputBefore.mdx +1 -1
  258. package/zh/guides/topic-detail/micro-frontend/c02-development.mdx +25 -0
  259. package/zh/guides/topic-detail/micro-frontend/c03-main-app.mdx +15 -15
  260. package/zh/guides/topic-detail/model/model-communicate.mdx +1 -1
  261. package/zh/guides/troubleshooting/_category_.json +2 -2
  262. package/zh/index.md +1 -1
  263. package/zh/tutorials/first-app/_category_.json +1 -1
  264. package/zh/tutorials/first-app/c01-start.mdx +1 -2
  265. package/zh/tutorials/first-app/c03-css.mdx +1 -2
  266. package/zh/tutorials/first-app/c06-model.mdx +2 -2
  267. package/zh/tutorials/first-app/c07-container.mdx +1 -1
  268. package/zh/tutorials/first-app/c08-entries.mdx +2 -3
  269. package/zh/tutorials/foundations/introduction.mdx +14 -29
  270. package/en/apis/app/commands/index.mdx +0 -7
  271. package/en/apis/app/hooks/index.mdx +0 -7
  272. package/en/apis/app/runtime/index.mdx +0 -7
  273. package/en/guides/advanced-features/index.mdx +0 -7
  274. package/en/guides/basic-features/css/_category_.json +0 -4
  275. package/zh/apis/app/commands/index.mdx +0 -7
  276. package/zh/apis/app/hooks/index.mdx +0 -7
  277. package/zh/apis/app/runtime/index.mdx +0 -7
  278. package/zh/guides/advanced-features/index.mdx +0 -7
  279. package/zh/guides/basic-features/css/_category_.json +0 -4
  280. package/zh/guides/basic-features/index.mdx +0 -7
@@ -4,7 +4,7 @@ title: 开发主应用
4
4
  ---
5
5
  # 开发主应用
6
6
 
7
- 在上一章 [体验微前端](/guides/topic-detail/micro-frontend/c02-development.md) 通过一个示例演示了如何创建和配置微前端子应用,通过本章你可以进一步了解如何开发主应用,以及它的常见配置。
7
+ 在上一章 [体验微前端](/guides/topic-detail/micro-frontend/c02-development) 通过一个示例演示了如何创建和配置微前端子应用,通过本章你可以进一步了解如何开发主应用,以及它的常见配置。
8
8
 
9
9
  在通过 `@modern-js/create` 命令创建应用工程后,可以在项目中执行 `pnpm run new`(实际执行了 `modern new` 命令),在选择了「微前端」模式后,会安装微前端依赖依赖,只需手动注册插件即可。
10
10
 
@@ -41,13 +41,13 @@ defineConfig(App, {
41
41
  getAppList: async () => {
42
42
  // 可以从其他远程接口获取
43
43
  return [{
44
- name: 'SubConvention',
45
- entry: 'http://localhost:3002',
46
- // activeWhen: '/SubConvention'
44
+ name: 'Table',
45
+ entry: 'http://localhost:8001',
46
+ // activeWhen: '/table'
47
47
  }, {
48
- name: 'SubCustom',
49
- entry: 'http://localhost:3003'
50
- // activeWhen: '/SubConvention'
48
+ name: 'Dashboard',
49
+ entry: 'http://localhost:8002'
50
+ // activeWhen: '/dashboard'
51
51
  }];
52
52
  },
53
53
  },
@@ -81,8 +81,8 @@ import { RouterProvider, Route, createBrowserRouter, createRoutesFromElements, B
81
81
 
82
82
  const AppLayout = () => (
83
83
  <>
84
- <div><Link to={'/SubConvention'}>加载约定式路由子应用</Link></div>
85
- <div><Link to={'/SubCustom'}>加载自控式路由子应用</Link></div>
84
+ <div><Link to={'/table'}>加载约定式路由子应用</Link></div>
85
+ <div><Link to={'/dashboard'}>加载自控式路由子应用</Link></div>
86
86
  <div><Link to={'/'}>卸载子应用</Link></div>
87
87
  <Outlet />
88
88
  </>
@@ -101,7 +101,7 @@ export default () => {
101
101
  return (
102
102
  <Route
103
103
  key={app.name}
104
- path={`${app.name}/*`}
104
+ path={`${app.name.toLowerCase()}/*`}
105
105
  element={
106
106
  <Component
107
107
  loadable={{
@@ -138,7 +138,7 @@ export default () => {
138
138
  };
139
139
  ```
140
140
 
141
- 这里通过 `Route` 组件自定义了 **SubConvention** 的激活路由为 **/SubConvention**, **SubCustom** 的激活路由为 **/SubCustom**。
141
+ 这里通过 `Route` 组件自定义了 **Table** 的激活路由为 **/table**, **Dashboard** 的激活路由为 **/dashboard**。
142
142
 
143
143
  ### 集中式路由
144
144
 
@@ -162,7 +162,7 @@ function App() {
162
162
  }
163
163
  ```
164
164
 
165
- 这样启动应用后,访问 `/SubCustom` 路由,会渲染 `SubCustom` 子应用,访问 `/SubConvention` 路由,会渲染 `SubConvention` 子应用。
165
+ 这样启动应用后,访问 `/table` 路由,会渲染 `Table` 子应用,访问 `/dashboard` 路由,会渲染 `Dashboard` 子应用。
166
166
 
167
167
  ### 两种模式混用
168
168
 
@@ -182,7 +182,7 @@ function Loading() {
182
182
 
183
183
  function App(){
184
184
  return <>
185
- <SubCustom
185
+ <Table
186
186
  loadable={{
187
187
  loading: Loading,
188
188
  }}
@@ -229,7 +229,7 @@ function Loading({ error, pastDelay }) {
229
229
 
230
230
  function App(){
231
231
  return <>
232
- <SubCustom
232
+ <Table
233
233
  loadable={{
234
234
  loading: Loading,
235
235
  delay: 300 // 0.3 seconds
@@ -265,7 +265,7 @@ function Loading({ error, timeOut, pastDelay }) {
265
265
 
266
266
  function App(){
267
267
  return <>
268
- <SubCustom
268
+ <Table
269
269
  loadable={{
270
270
  loading: Loading,
271
271
  timeOut: 10000 // 10s
@@ -88,7 +88,7 @@ export default function App() {
88
88
  ```
89
89
 
90
90
  :::info 补充信息
91
- Modern.js 默认开启 [自动生成 actions](./auto-actions.md),所以 `stepModel` 中虽然没有手动定义 Actions,但可以使用自动生成的 `setState`。
91
+ Modern.js 默认开启 [自动生成 actions](./auto-actions.mdx),所以 `stepModel` 中虽然没有手动定义 Actions,但可以使用自动生成的 `setState`。
92
92
 
93
93
  :::
94
94
 
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "label": "常见问题",
3
- "position": 6,
4
- "collapsed": true
3
+ "position": 10,
4
+ "collapsed": false
5
5
  }
package/zh/index.md CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  pageType: home
3
3
  ---
4
- # index
4
+ # Modern.js - 基于 React 的渐进式现代 Web 开发框架
@@ -1,5 +1,5 @@
1
1
  {
2
- "label": "联系人列表应用",
2
+ "label": "实战教程",
3
3
  "position": 2,
4
4
  "collapsed": false
5
5
  }
@@ -81,10 +81,9 @@ rm src/routes/index.css
81
81
 
82
82
  接下来,我们修改项目中的 `modern.config.ts`,开启 SSR 能力:
83
83
 
84
- ```ts
84
+ ```ts title="modern.config.ts"
85
85
  import appTools, { defineConfig } from '@modern-js/app-tools';
86
86
 
87
- // https://modernjs.dev/docs/apis/app/config
88
87
  export default defineConfig({
89
88
  runtime: {
90
89
  router: true,
@@ -124,7 +124,6 @@ Modern.js 集成了主流、轻量、通用的 Utility Class 工具库 [Tailwind
124
124
  import appTools, { defineConfig } from '@modern-js/app-tools';
125
125
  import tailwindcssPlugin from '@modern-js/plugin-tailwindcss';
126
126
 
127
- // https://modernjs.dev/docs/apis/app/config
128
127
  export default defineConfig({
129
128
  runtime: {
130
129
  router: true,
@@ -294,7 +293,7 @@ import '../styles/utils.css';
294
293
  ```
295
294
 
296
295
  :::info
297
- Modern.js 集成了 [PostCSS](/guides/basic-features/css/postcss),支持现代 CSS 语法特性,比如 [custom properties](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties)。
296
+ Modern.js 集成了 [PostCSS](/guides/css/postcss),支持现代 CSS 语法特性,比如 [custom properties](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties)。
298
297
 
299
298
  :::
300
299
 
@@ -10,8 +10,8 @@ title: 添加业务模型(状态管理)
10
10
 
11
11
  因此会开始编写一些跟 UI 完全无关的业务逻辑,如果继续写在组件代码中,会产生越来越多的面条式代码。为此,我们引入了一种叫做 **业务模型(Model)** 的代码模块,将这些业务逻辑和 UI 解耦。
12
12
 
13
- :::info
14
- 使用状态管理相关 API,需要先启用配置项 [runtime.state](/docs/configure/app/runtime/state):
13
+ :::info 注意
14
+ 使用状态管理相关 API,需要先启用配置项 [runtime.state](/configure/app/runtime/state):
15
15
 
16
16
  ```ts title="modern.config.ts"
17
17
  import { defineConfig } from '@modern-js/app-tools';
@@ -277,6 +277,6 @@ export default Index;
277
277
 
278
278
  `components/` 里的**视图组件**,都是目录形式,如 `Avatar/index.tsx`。而 `containers/` 里的**容器组件**,都是单文件形式,如 `contacts.tsx`。**这是我们推荐的一种最佳实践**。
279
279
 
280
- 在 ​ [添加 UI 组件(Component)](./c02-component.md) 章节提到过,视图组件用目录形式,是因为视图组件负责实现 UI 展示和交互细节,可以演变的复杂。用目录形式,可以方便增加子文件,包括专用的资源(图片等)、专用子组件、CSS 文件等。在这个目录内部可以随意重构,只考虑最小局部。
280
+ 在 ​ [添加 UI 组件(Component)](./c02-component.mdx) 章节提到过,视图组件用目录形式,是因为视图组件负责实现 UI 展示和交互细节,可以演变的复杂。用目录形式,可以方便增加子文件,包括专用的资源(图片等)、专用子组件、CSS 文件等。在这个目录内部可以随意重构,只考虑最小局部。
281
281
 
282
282
  而容器组件只负责连接,是一个胶水层,复杂的业务逻辑和实现细节都交给 View 层和 Model 层去实现。容器组件自己应该保持简单清晰,不应该包含复杂实现细节,所以不应该有内部结构。采用单文件形式不但更简洁,也能起到约束作用,提醒开发者不要把容器组件写复杂。
@@ -91,13 +91,12 @@ mv src/myapp src/contacts
91
91
 
92
92
  我们可以在 Modern.js 配置文件里,自己写代码来控制项目的配置。
93
93
 
94
- 现在,修改 `modern.config.ts` 里面添加内容:
94
+ 现在,修改 `modern.config.ts`,添加内容:
95
95
 
96
- ```ts
96
+ ```ts title="modern.config.ts"
97
97
  import appTools, { defineConfig } from '@modern-js/app-tools';
98
98
  import tailwindcssPlugin from '@modern-js/plugin-tailwindcss';
99
99
 
100
- // https://modernjs.dev/docs/apis/app/config
101
100
  export default defineConfig({
102
101
  runtime: {
103
102
  router: true,
@@ -2,44 +2,29 @@
2
2
  title: 介绍
3
3
  sidebar_position: 1
4
4
  ---
5
+
5
6
  # 介绍
6
7
 
7
8
  欢迎来到 Modern.js 教程!
8
9
 
9
10
  阅读本栏目后,你将初步理解 Modern.js,并使用 Modern.js 创建第一个应用。
10
11
 
11
- :::note 关注
12
- 加入我们的飞书群,咨询相关问题,了解最新动态。
13
-
14
- :::
15
-
16
12
  ## Modern.js 是什么
17
13
 
18
- **Modern.js** 是基于 React 的渐进式现代 Web 开发框架。
19
-
20
- 框架内置多种开箱即用的开发工具,拥有极致的构建性能,支持零配置的渲染范式切换,一体化的 API 调用。并从三种工程方案出发(应用工程方案、模块工程方案,Monorepo 工程方案),支持全链路的前端研发。
21
-
22
- Modern.js 是字节跳动的底层前端研发框架,已经直接或间接的服务上千个应用,包括中后台、PC Web、H5 等多种应用场景。框架覆盖完整的生命周期,拥有完善的插件体系,提供高度定制能力。支持通过生成器插件自定义业务线专属的工程方案,定制各种功能扩展和业务需求,帮助开发者更快速的搭建应用。
23
-
24
- ## 为什么使用 Modern.js
25
-
26
- Modern.js 能为开发者提供极致的**开发体验(Development Experience)**,让应用拥有更好的**用户体验(User Experience)**。
27
-
28
- 在开发 React 应用过程中,开发者通常需要去为某些功能去设计实现方案,或是使用其他的库、框架来解决这些问题。Modern.js 支持 React 应用所需要的所有配置和工具,并内置**额外的功能和优化**。开发者可以使用 React 构建应用的 UI,然后逐步采用 Modern.js 的功能来解决常见的应用需求,如路由、数据获取、状态管理等。
29
-
30
- 它主要包含以下特点:
31
-
32
- - 🪜 **渐进式**:使用最精简的模板创建项目,通过生成器逐步开启插件功能,定制解决方案。
33
- - 🏠 **一体化**:开发与生产环境 Web Server 唯一,CSR 和 SSR 同构开发,函数即接口的 API 服务调用。
34
- - 📦 **开箱即用**:默认 TS 支持,内置构建、ESLint、调试工具,全功能可测试。
35
- - 🌏 **周边生态**:自研状态管理、微前端、模块打包、Monorepo 方案等周边需求。
36
- - 🕸 **多种路由模式**:包含自控路由、基于文件约定的路由(嵌套路由)等。
37
- - 🚀 **独立构建核心**:支持多种打包工具,深度优化构建产物。
14
+ 如果你对 Modern.js 还不了解,可以先阅读 [Modern.js 介绍](/guides/get-started/introduction)。
38
15
 
39
- ## 下一步
16
+ ## 实战教程
40
17
 
41
- {/* 如果你是前端初学者,可能会觉得这些概念有些复杂。我们提供了一些 [JavaScript 和 React](/tutorials/foundations/basic) 的学习资料,你可以先对它们做些了解。
18
+ 我们准备了一个创建「联系人列表应用」的实战教程,你可以按照教程一步步创建一个应用,并了解到 Modern.js 中的以下实践:
42
19
 
43
- 如果你是有经验的开发者,希望了解如何使用 Modern.js,你可以尝试[创建第一个应用](/tutorials/first-app/c01-start),或是阅读[指南](/guides/get-started/quick-start)。 */}
20
+ - 创建项目
21
+ - 使用 antd 组件库
22
+ - 集成 Tailwind CSS
23
+ - 客户端路由
24
+ - 数据获取
25
+ - 状态管理
26
+ - 容器组件
27
+ - 新建入口
28
+ - ...
44
29
 
45
- 如果你希望了解如何使用 Modern.js,可以尝试[创建第一个应用](/tutorials/first-app/c01-start),或是阅读[指南](/guides/get-started/quick-start)。
30
+ 下面就让我们从 [创建项目](tutorials/first-app/c01-start) 开始吧!
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # Commands
6
-
7
- This section covers all commands.
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # Convention
6
-
7
- This section covers all documentation conventions.
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # Runtime
6
-
7
- This section covers all APIs using `@modern-js/runtime`.
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # Advanced Features
6
-
7
- This section covers advanced features of Modern.js.
@@ -1,4 +0,0 @@
1
- {
2
- "label": "CSS Solutions",
3
- "position": 4
4
- }
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # 命令
6
-
7
- 本节涵盖了所有命令。
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # 文件约定
6
-
7
- 本节涵盖了使用应用工程的所有文件约定。
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # 运行时
6
-
7
- 本节涵盖了使用 `@modern-js/runtime` 的所有 API。
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # 进阶功能
6
-
7
- 本节涵盖了使用应用工程的进阶功能。
@@ -1,4 +0,0 @@
1
- {
2
- "label": "CSS 开发方案",
3
- "position": 4
4
- }
@@ -1,7 +0,0 @@
1
- ---
2
- type: ref
3
- ---
4
-
5
- # 基础功能
6
-
7
- 本节涵盖了使用应用工程的基础功能。