umi
umi copied to clipboard
routeProps 文档与测试用例补全
close https://github.com/umijs/umi/issues/10584
The latest updates on your projects. Learn more about Vercel for Git ↗︎
| Name | Status | Preview | Comments | Updated (UTC) |
|---|---|---|---|---|
| umi | ✅ Ready (Inspect) | Visit Preview | 💬 Add feedback | May 5, 2023 6:44am |
Codecov Report
Patch coverage has no change and project coverage change: -0.01 :warning:
Comparison is base (
be82bad) 29.17% compared to head (af54510) 29.16%.
Additional details and impacted files
@@ Coverage Diff @@
## master #10593 +/- ##
==========================================
- Coverage 29.17% 29.16% -0.01%
==========================================
Files 479 479
Lines 14400 14404 +4
Branches 3388 3389 +1
==========================================
Hits 4201 4201
- Misses 9472 9475 +3
- Partials 727 728 +1
| Impacted Files | Coverage Δ | |
|---|---|---|
| ...kages/preset-umi/src/features/tmpFiles/tmpFiles.ts | 0.00% <ø> (ø) |
|
| ...kages/preset-umi/src/utils/routeExportExtractor.ts | 0.00% <0.00%> (ø) |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
文档暂时写的开启方式为约定式路由默认开启, 配置式路由手动开启,具体的配置方式修改还没有完成?
昨天还没对清楚,现在的最终设定是:如果用户没配 routes ,就自动开启,如果配了 routes ,就不开启,仅服务于约定式路由。
所以文档就在 404 路由 后面开一个二级标题 ## 扩展路由属性 分约定式路由(用 routeProps)和配置式路由(写在 routes 里面)两种情况介绍下用法吧。
我有注意到在routeProps导出的属性中,禁止了layout 属性,我的理解这个是为了禁用全局layout的,这里禁止是出于什么考虑呢?
你说得对,这个地方应该允许 layout ,辛苦把这个 layout 限制去掉吧。
另外:
-
github actions 加一下,在
.github/workflows里 -
约定式路由有
routeProps之后,是不是默认 simple 模板就不需要配置式routes了?感觉可以删去改成routeProps的模板。(召唤 @sorrycc )
所以文档就在 404 路由 后面开一个二级标题 ## 扩展路由属性 分约定式路由(用 routeProps)和配置式路由(写在 routes 里面)两种情况介绍下用法吧
关于文档调整结构,我有个两个建议,
- 把约定式路由下面的 “全局layout", "不同全局layout", "404路由“ 都作为2级标题。这些配置都不应该是约定式路由专属的,现在结构是约定式路由的下级。
- 按照现在的说法, 只有约定式路由支持routeProps,所以这部分描述放在约定式路由的下级是不是更好?
-
可以去掉 "全局layout" + "不同全局layout" ,开一个二级标题叫布局设定,要分约定式和配置式介绍如何修改 layout ,注意此处
layouts/index.tsx的约定对配置式布局和约定式均默认生效。 -
可以去掉 "404路由" ,开一个二级标题叫 404 路由,要分约定式和配置式介绍如何定义 404 页面,注意约定式是默认读
src/404.tsx,配置式需要用/*兜底。 -
虽然只有约定式支持
routeProps,但是现在的文档没有介绍路由额外属性怎么配的,所以约定式还是配置式路由最好都要有介绍,故期望开一个新的二级标题叫 "路由额外属性" ,分两种路由模式介绍如何配置和使用额外属性。
@fz6m 这个PR是还需要提供些什么内容吗?
另外,关于开发代理这部分,我注意到 http-proxy-middleware这一类依赖被预先打包放到了 bundler-utils 包里面。 这里面的依赖比如 http-proxy模块需要更新该如何操作?直接提交打包之后的js代码吗?现在的http-proxy模块有一个在Nodejs 15 之后使用有的一个bugfix https://github.com/AdoKevin/node-http-proxy/commit/5e9b01dbe145f016a4d4137b116472fd08274f19 想提交。
在对应的包里执行 pnpm build:deps --dep http-proxy-middleware (升级的话单独提个 PR ),另外把这个 PR 的冲突解决下吧,merge 下 master 🌹
问下这个pr有进展?
我试了下最新的 max 里的 pro layout 版本,现在好像不能做到运行时关闭 layout: false 了,先统一用配置式路由吧。