@cainiaofe/cn-ui-lowcode
Version:
45 lines (42 loc) • 1.16 kB
JavaScript
import VisualEngine, { Bundle } from '@ali/visualengine';
import React from 'react';
import { getDataSourceByName } from '@/common/util/util';
import { _dataSourceName } from '@/common/util/const';
const PageBundle = Bundle.createPrototype({
title: '页面(Page)',
componentName: 'Page',
category: null,
canHovering: false,
canSelecting: false,
canOperating: false,
canDragging: false,
canDropTo: false,
canLoop: false,
isContainer: true,
// snippets: [
// ],
// configure: [
// ],
didDropOut: (current) => {
// 删除组件的数据源
if (current?.id) {
const dataSourceName = current.getPropValue(_dataSourceName);
if (dataSourceName) {
setTimeout(() => {
const node = VisualEngine?.designer?.currentDocument?.nodesMap?.get?.(
current.id,
);
if (!node) {
const ds = getDataSourceByName(dataSourceName);
if (ds && ds.id) {
VisualEngine?.context
?.getManager?.('dataPool')
?.removeItem?.(ds.id);
}
}
});
}
}
},
});
export default PageBundle;