mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2025-12-12 11:20:11 +00:00
commit
d4de1cc7cb
@ -159,7 +159,7 @@ export class Prop implements IPropParent {
|
||||
const v = prop.export(stage);
|
||||
if (v != null) {
|
||||
maps = maps || {};
|
||||
maps[prop.key || key] = prop.export(stage);
|
||||
maps[prop.key || key] = v;
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -170,9 +170,13 @@ export class Prop implements IPropParent {
|
||||
if (!this._items) {
|
||||
return this._value;
|
||||
}
|
||||
return this.items!.map((prop) => {
|
||||
const values = this.items!.map((prop) => {
|
||||
return prop.export(stage);
|
||||
});
|
||||
if (values.every(val => val === undefined)) {
|
||||
return undefined;
|
||||
}
|
||||
return values;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -26,7 +26,7 @@ import rootHeaderMetadata from '../../fixtures/component-metadata/root-header';
|
||||
import rootContentMetadata from '../../fixtures/component-metadata/root-content';
|
||||
import rootFooterMetadata from '../../fixtures/component-metadata/root-footer';
|
||||
|
||||
describe.skip('Node 方法测试', () => {
|
||||
describe('Node 方法测试', () => {
|
||||
let editor: Editor;
|
||||
let designer: Designer;
|
||||
let project: Project;
|
||||
@ -474,15 +474,16 @@ describe.skip('Node 方法测试', () => {
|
||||
it('didDropIn / didDropOut', () => {
|
||||
const form = doc.getNode('node_k1ow3cbo');
|
||||
designer.createComponentMeta(divMetadata);
|
||||
designer.createComponentMeta(formMetadata);
|
||||
const callbacks = form.componentMeta.getMetadata().configure.advanced?.callbacks;
|
||||
const fn1 = callbacks.onNodeAdd = jest.fn();
|
||||
const fn2 = callbacks.onNodeRemove = jest.fn();
|
||||
const textField = doc.getNode('node_k1ow3cc9');
|
||||
form.didDropIn(textField);
|
||||
expect(fn1).toHaveBeenCalledWith(textField, form);
|
||||
expect(fn1).toHaveBeenCalledWith(textField.internalToShellNode(), form.internalToShellNode());
|
||||
|
||||
form.didDropOut(textField);
|
||||
expect(fn2).toHaveBeenCalledWith(textField, form);
|
||||
expect(fn2).toHaveBeenCalledWith(textField.internalToShellNode(), form.internalToShellNode());
|
||||
});
|
||||
|
||||
it('hover', () => {
|
||||
|
||||
@ -430,6 +430,11 @@ describe('Prop 类测试', () => {
|
||||
// illegal
|
||||
// expect(prop.set(5, 1)).toBeNull();
|
||||
});
|
||||
|
||||
it('should return undefined when all items are undefined', () => {
|
||||
prop = new Prop(mockedPropsInst, [undefined, undefined], '___loopArgs___');
|
||||
expect(prop.getValue()).toBeUndefined();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user