Closed Xiphin closed 2 months ago
The recent changes involve enhancing the Context
class in src/context.ts
with a new pageJsonPath
property, updating its usage in various methods, and adjusting the behavior in loadPagesJson
function in src/utils.ts
to align with CLI mode checks. Additionally, a new buildStart
method was introduced in the VitePluginUniLayouts
function in src/index.ts
to handle setting ctx.pageJsonPath
based on options.
File Path | Change Summary |
---|---|
src/context.ts |
Added pageJsonPath property to Context class with updated usage |
src/index.ts |
Introduced buildStart method in VitePluginUniLayouts function |
src/utils.ts |
Modified loadPagesJson to check CLI mode for pageJsonPath |
In the code's dance, a tale unfolds, Paths and modes, their story told. With tweaks and tunes, our code refines, A rabbit's touch, in lines it shines. CLI whispers, paths align, Code evolves, a tale divine.
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
https://github.com/Skiyee/vite-plugin-uni-layouts/commit/84e6bc41ba6fb1dea1eb76c4d46eef7a795242f3
刚才有试着从 vite
入手,抛弃 existsSync
,应该能保证是否为CLI创建的项目,可以看一下
刚才有试着从
vite
入手,抛弃existsSync
,应该能保证是否为CLI创建的项目,可以看一下
不考虑正则效率的问题,这个设计更合理
刚才有试着从
vite
入手,抛弃existsSync
,应该能保证是否为CLI创建的项目,可以看一下
你再兼容一下用户配置传参的问题,就可以 PR 了
会是自动检测的,不需要配置
原理就是判断 src
下是否有这个 main
文件,若有自动识别为 cli
的路径
这个replace性能还可以,因为是对字符串操作,其次就是整个周期只操作一次
Skiyee@84e6bc4
会是自动检测的,不需要配置 原理就是判断
src
下是否有这个main
文件,若有自动识别为cli
的路径
buidStart 自动检测 没问题,我说的是当用户配置了一个 pagesJsonPath 选项的情况下,自动检测会直接覆盖掉它。
这个replace性能还可以,因为是对字符串操作,其次就是整个周期只操作一次
https://github.com/uni-helper/vite-plugin-uni-layouts/blob/4ca0e5dbe343ff3b1c76b6c752ddf9e8d8e06000/src/context.ts#L49 https://github.com/uni-helper/vite-plugin-uni-layouts/blob/4ca0e5dbe343ff3b1c76b6c752ddf9e8d8e06000/src/utils.ts#L49 getTarget 函数是每个项目文件编译时都会走一遍,应该是 N 次调用
没关系的,约定没有 pagesJsonPath
,出错就是用户自己配置的问题了
没有N次调用,识别 是否为CLI创建
只做一次
没关系的,约定没有
pagesJsonPath
,出错就是用户自己配置的问题了没有N次调用,识别
是否为CLI创建
只做一次
LGTM 💖
@Skiyee 我把你的提交合过来了 你看一下
我来发吧,这边有开着的PR
谢谢大佬一起讨论 ❤
没关系的,约定没有
pagesJsonPath
,出错就是用户自己配置的问题了没有N次调用,识别
是否为CLI创建
只做一次
@Skiyee 我刚去验证了一下 slash 函数是 N 次调用,不过这点性能问题可以忽略不计
@Skiyee 我刚去验证了 slash 函数是 N 次调用,不过这点性能问题可以忽略不计
是的
slash
是在 getTarget
里头的,由于所有路径都需要被转换
每次热更新都会被 .vue|.nvue
结尾的文件路径所调用
这个replace性能还OK,pages那个仓库就有用到类似的工具函数
@Skiyee 我刚去验证了 slash 函数是 N 次调用,不过这点性能问题可以忽略不计
是的
slash
是在getTarget
里头的,由于所有路径都需要被转换每次热更新都会被
.vue|.nvue
结尾的文件路径所调用这个replace性能还OK,pages那个仓库就有用到类似的工具函数
挺好的 👍
解决优化: issues: https://github.com/uni-helper/vite-plugin-uni-layouts/issues/36 pr: https://github.com/uni-helper/vite-plugin-uni-layouts/pull/37 提到的 路径 和 HBuilderX 环境兼容的问题
Summary by CodeRabbit