-
Notifications
You must be signed in to change notification settings - Fork 310
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
fix: mixed lifeCyclesContent when empty lifecycles #810
Conversation
close opentiny#806 修复生命周期为空时,取当前页面schema生命周期值的 bug
WalkthroughThe changes involve a modification to the Changes
Assessment against linked issues
Poem
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? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Outside diff range and nitpick comments (1)
packages/common/component/LifeCycles.vue (1)
Line range hint
1-424
: Consider broader implications and add comprehensive testsThe change to simplify lifecycle data assignment looks good and aligns with the PR objectives. However, consider the following points:
The PR description mentions fixing the issue "when the lifecycle is empty," but this change applies to all cases. Ensure that this broader change doesn't introduce unexpected behavior in non-empty lifecycle scenarios.
The removal of the canvas API fallback might affect other parts of the application that relied on this behavior. Verify that no other components or functions depended on the previous implementation.
To ensure the robustness of this change:
Add comprehensive unit tests covering various scenarios:
- Empty lifecycle
- Non-empty lifecycle
- Switching between pages with different lifecycle configurations
Update the component's documentation to reflect the new behavior and any changes in expected props.
Consider adding a migration guide or update notes if this change might affect other developers using this component.
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (1)
- packages/common/component/LifeCycles.vue (1 hunks)
Additional comments not posted (1)
packages/common/component/LifeCycles.vue (1)
132-132
: LGTM! Simplified lifecycle data assignment.This change simplifies the assignment of
state.bindLifeCycles
by directly usingprops.bindLifeCycles
with a fallback to an empty object. This aligns with the PR objective of fixing issues related to incorrect retrieval of lifecycle values.To ensure this change doesn't introduce any regressions:
- Verify that
props.bindLifeCycles
is always up-to-date and correctly passed to this component.- Test scenarios where lifecycle data was previously fetched from the canvas API to ensure no critical information is lost.
- Confirm that this change resolves the issue of onMounted code being overwritten when switching between pages (issue 🐛 [Bug]: onMounted代码被覆盖 #806).
Run the following script to check for any remaining references to
getSchema().lifeCycles
in the codebase:If any results are found, review those occurrences to ensure consistency with this change.
Verification successful
Action Required: Correcting Search Command for Vue Files
The previous search command failed because 'vue' is not a recognized file type. Please run the following script to search for references to
getSchema().lifeCycles
in.vue
and.js
files:
No Remaining References to
getSchema().lifeCycles
FoundThe search did not return any remaining references to
getSchema().lifeCycles
in.vue
and.js
files. This confirms that the lifecycle data assignment change is properly implemented without leaving any dependencies on the canvas API.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Search for any remaining references to getSchema().lifeCycles rg --type vue --type js 'getSchema\(\).*lifeCycles'Length of output: 81
Script:
#!/bin/bash # Search for any remaining references to getSchema().lifeCycles in .vue and .js files rg --glob '*.vue' --glob '*.js' 'getSchema\(\).*lifeCycles'Length of output: 61
* fix(mockServer): mockServer page preview can't render element-plus element (#503) * fix(style): fix render error caused by inline style breaks (#526) * fix(metaComp): fix bug where metaHtmlText could set value to incorret schema children (#473) * fix(vue-generator): fix globalstate codegen error (#547) * fix(material): add componentsMap to app Schema after material build (#527) * fix: slot params missing double quote (#605) * fix: slot params missing double quote * fix: exclude nodemodule test case * fix: 修复onMouseover拼写错误 (#662) * fix: esbuild install failed on node v16 (#668) * fix: esbuild install failed on nodev16 * fix: esbuild install failed on nodev16 * fix: builtin components can't generate import statement with genSFCWithDefaultPlugin method (#656) * fix: esbuild install failed on nodev16 (#671) * fix: esbuild install failed on nodev16 * fix: esbuild install failed on nodev16 * fix: remove deps on root pkg.json * fix(preview): multiple nested blocks cannot preview #663 (#665) * fix(material): add missing componentsMap to mockServer (#701) * fix(setting): fix bindEvent dialog visible can't work on tinyvue 3.17 (#715) * feat(download-code): support download zip for not support browsers (#703) * feat(download-code): support download zip for not support browsers * feat(download-code): support download zip for not support browsers - review * feat(download-code): support download zip for not support browsers - review * docs: update milestone (#728) * docs: update milestone * fix: tab * fix: abaolute canvas init inlineStyle should be string (#730) * fix(download): Optimize download logic and adapt to iframe (#739) * fix(download): Optimize download logic and adapt to iframe * feat(cdn): change cdn from onmicrosoft to unpkg (#750) * fix: 隐藏画布根节点的包裹元素的操作选项 (#492) * fix(script): translate log (#549) * fix: translate log * Update scripts/connection.mjs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/connection.mjs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/connection.mjs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: reset spacing cannot generate correct source code (#657) * fix: jsx slot modelvalue can't update value (#734) * fix: jsx slot modelvalue can't update value * fix: add unit test for updateModel event * fix(canvas): absolute dnd update position to schema. close #664 (#751) * fix(generate-vue):修复出码文件选择界面打包后样式丢失问题 (#789) Co-authored-by: wangwenbing <[email protected]> * fix(stylePanel): fix setting border-radius could not work on first time (#481) * fix(common): fix verify required (#787) * fix: mixed lifeCyclesContent when empty lifecycles (#810) close #806 修复生命周期为空时,取当前页面schema生命周期值的 bug --------- Co-authored-by: chilingling <[email protected]> Co-authored-by: yeser <[email protected]> Co-authored-by: wenmine <[email protected]> Co-authored-by: Gene <[email protected]> Co-authored-by: yaoyun8 <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: bwrong <[email protected]> Co-authored-by: wangwenbing <[email protected]> Co-authored-by: Xie Jay <[email protected]>
* fix(mockServer): mockServer page preview can't render element-plus element (opentiny#503) * fix(style): fix render error caused by inline style breaks (opentiny#526) * fix(metaComp): fix bug where metaHtmlText could set value to incorret schema children (opentiny#473) * fix(vue-generator): fix globalstate codegen error (opentiny#547) * fix(material): add componentsMap to app Schema after material build (opentiny#527) * fix: slot params missing double quote (opentiny#605) * fix: slot params missing double quote * fix: exclude nodemodule test case * fix: 修复onMouseover拼写错误 (opentiny#662) * fix: esbuild install failed on node v16 (opentiny#668) * fix: esbuild install failed on nodev16 * fix: esbuild install failed on nodev16 * fix: builtin components can't generate import statement with genSFCWithDefaultPlugin method (opentiny#656) * fix: esbuild install failed on nodev16 (opentiny#671) * fix: esbuild install failed on nodev16 * fix: esbuild install failed on nodev16 * fix: remove deps on root pkg.json * fix(preview): multiple nested blocks cannot preview opentiny#663 (opentiny#665) * fix(material): add missing componentsMap to mockServer (opentiny#701) * fix(setting): fix bindEvent dialog visible can't work on tinyvue 3.17 (opentiny#715) * feat(download-code): support download zip for not support browsers (opentiny#703) * feat(download-code): support download zip for not support browsers * feat(download-code): support download zip for not support browsers - review * feat(download-code): support download zip for not support browsers - review * docs: update milestone (opentiny#728) * docs: update milestone * fix: tab * fix: abaolute canvas init inlineStyle should be string (opentiny#730) * fix(download): Optimize download logic and adapt to iframe (opentiny#739) * fix(download): Optimize download logic and adapt to iframe * feat(cdn): change cdn from onmicrosoft to unpkg (opentiny#750) * fix: 隐藏画布根节点的包裹元素的操作选项 (opentiny#492) * fix(script): translate log (opentiny#549) * fix: translate log * Update scripts/connection.mjs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/connection.mjs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/connection.mjs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: reset spacing cannot generate correct source code (opentiny#657) * fix: jsx slot modelvalue can't update value (opentiny#734) * fix: jsx slot modelvalue can't update value * fix: add unit test for updateModel event * fix(canvas): absolute dnd update position to schema. close opentiny#664 (opentiny#751) * fix(generate-vue):修复出码文件选择界面打包后样式丢失问题 (opentiny#789) Co-authored-by: wangwenbing <[email protected]> * fix(stylePanel): fix setting border-radius could not work on first time (opentiny#481) * fix(common): fix verify required (opentiny#787) * fix: mixed lifeCyclesContent when empty lifecycles (opentiny#810) close opentiny#806 修复生命周期为空时,取当前页面schema生命周期值的 bug --------- Co-authored-by: chilingling <[email protected]> Co-authored-by: yeser <[email protected]> Co-authored-by: wenmine <[email protected]> Co-authored-by: Gene <[email protected]> Co-authored-by: yaoyun8 <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: bwrong <[email protected]> Co-authored-by: wangwenbing <[email protected]> Co-authored-by: Xie Jay <[email protected]>
修复生命周期为空时,取当前页面schema生命周期值的 bug
English | 简体中文
PR
PR Checklist
Please check if your PR fulfills the following requirements:
PR Type
What kind of change does this PR introduce?
Background and solution
What is the current behavior?
打开页面设置,如果:
则当前设置的页面声明周期会取当前编辑页面生命周期的值
Issue Number: #806
What is the new behavior?
当前设置的页面声明周期不取当前编辑页面生命周期的值,保持为空
Does this PR introduce a breaking change?
Other information