Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add compiler macros defineAppConfig and definePageConfig #10269

Closed
wants to merge 10 commits into from

Conversation

b2nil
Copy link
Collaborator

@b2nil b2nil commented Sep 10, 2021

这个 PR 做了什么? (简要描述所做更改)

这个 PR 是什么类型? (至少选择一个)

  • 错误修复(Bugfix)
  • 新功能(Feature)
  • 代码重构(Refactor)
  • TypeScript 类型定义修改(Typings)
  • 文档修改(Docs)
  • 代码风格更新(Code style update)
  • 其他,请描述(Other, please describe):

这个 PR 涉及以下平台:

  • 所有小程序
  • 微信小程序
  • 支付宝小程序
  • 百度小程序
  • 字节跳动小程序
  • QQ 轻应用
  • 京东小程序
  • 快应用平台(QuickApp)
  • Web 平台(H5)
  • 移动端(React-Native)

@taro-bot2
Copy link

taro-bot2 bot commented Sep 10, 2021

欢迎提交 PR~ Taro 非常感谢您对开源事业做出的贡献!🌷🌷🌷

一般 PR 会在一到两周内进行 review,成功合入后会随下一个版本进行发布。

Review 需要耗费大量时间,所以请遵循以下规范,协助我们提高 review 效率🙏🙏🙏

  1. 详细介绍 PR 的背景(非常重要,例如解决了什么问题,该问题如何复现等)
  2. 确保 CI 顺利运行。
  3. 最好能提供对应的测试用例。

为了更好地进行沟通,请加入 Taro 开发者微信群:

@Chen-jj
Copy link
Contributor

Chen-jj commented Sep 17, 2021

666~

@Chen-jj Chen-jj added the V-3 Version - 3.x label Sep 17, 2021
@b2nil b2nil marked this pull request as ready for review September 18, 2021 11:17
@b2nil
Copy link
Collaborator Author

b2nil commented Sep 18, 2021

@Chen-jj
#10224 这个 PR 就不修复了,因为只增加 this.getPages 不能彻底解决问题。modifyMiniConfigs 这个钩子还有其他缺陷,动态修改 filesConfig 时, 好像不太方便更新 MiniPlugin 的 pagescomponentsdependencies 等。

另外, 读取到页面配置后,负责删除 definePageConfig 的 babel 插件,因为功能比较简单,我直接放在 @tarojs/helper 里面了。如果需要提出来单独作为一个包,再改吧。
https://github.com/NervJS/taro/pull/10269/files#diff-05ad5b4d83e7879818a1fa32896460dbf57ae20c584efc9d9a5e7867a22b0e21R621-R623

@b2nil
Copy link
Collaborator Author

b2nil commented Sep 19, 2021

@Chen-jj
CI 测试 Snapshot 的变化,主要来自 taro-loader 读取配置方式的如下改变:

// https://github.com/NervJS/taro/pull/10269/files#diff-f7136b34a183dd9ce738fe00845f17ae4a5d760fcbe7fa612473348f166873c0L15-R16
- }, require(${stringify(pages.get(path)!)}).default || {}),
+ }, ${JSON.stringify(readConfig(pages.get(path)!))}),

我本地更新 webpack-runnermini-runner 的 Snapshot,会出现大量 diff,主要是更新后的 Snapshot 中,各个文件的代码位置,与现有的 Snapshot 完全不一样。另外,由于使用是 windows,路径问题也会导致大量 diff。

直接更新 Snapshot 的话,估计大概率还得改回来。 这个步骤可否由你这边代劳一下?

@lizong9527
Copy link
Contributor

@Chen-jj 这个pr还打算合吗

@Chen-jj
Copy link
Contributor

Chen-jj commented Nov 23, 2021

@Chen-jj 这个pr还打算合吗

合的~

@bingtsingw
Copy link
Contributor

@Chen-jj 这个pr还打算合吗

合的~

大佬能不能抽空合下这个pr, 关注好久了~

@Chen-jj
Copy link
Contributor

Chen-jj commented Dec 26, 2021

@b2nil @lizong9527 @bingtsingw 已合入 3.4 分支,cherry-pick 了部分,对部分代码作了改动。感谢 @b2nil 大佬的贡献~

@Chen-jj Chen-jj closed this Dec 26, 2021
@Chen-jj
Copy link
Contributor

Chen-jj commented Dec 26, 2021

文档:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
V-3 Version - 3.x
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants