Modal-like Components Have hidden Forced to true
Note
For the correct way to show dialogs, see: How to show/hide a dialog via a button
Cause
Because of the hidden property, Modal components do not render in preview, so their instance cannot be obtained.
Fix
[Recommended] Upgrade to Engine version 1.0.11 or later
Add a Save-stage propsReducer
Add a propsReducer for the Save stage that removes the hidden prop. Example:
import { project } from '@rchh/lowcode-engine';
import { IPublicEnumTransformStage } from '@rchh/lowcode-types';
export const deleteHiddenTransducer = (ctx: any) => {
return {
name: 'deleteHiddenTransducer',
async init() {
project.addPropsTransducer((props: any): any => {
delete props.hidden;
return props;
}, IPublicEnumTransformStage.Save);
},
};
};
deleteHiddenTransducer.pluginName = 'deleteHiddenTransducer';
Export schema using Save stage
import { TransformStage } from '@rchh/lowcode-types';
const schema = project.exportSchema(TransformStage.Save);