feat(editor): propsService.setNewItemId新增force参数

This commit is contained in:
roymondchen 2023-12-11 20:19:17 +08:00
parent 456692ff8a
commit a9d794dc19
2 changed files with 5 additions and 4 deletions

View File

@ -139,12 +139,13 @@ class Props extends BaseService {
/**
* id都设置成一个新的ID
* ID则保持不变
* ID并且force为false则保持不变
* @param {Object} config
* @param {Boolean} force ID
*/
/* eslint no-param-reassign: ["error", { "props": false }] */
public async setNewItemId(config: MNode) {
if (editorService.getNodeById(config.id)) {
public async setNewItemId(config: MNode, force = true) {
if (force || editorService.getNodeById(config.id)) {
const newId = await this.createId(config.type || 'component');
this.setRelateId(config.id, newId);
config.id = newId;

View File

@ -40,7 +40,7 @@ export const beforePaste = async (position: PastePosition, config: MNode[]): Pro
if (pastePosition.top && configItem.style?.top) {
pastePosition.top = configItem.style?.top - referenceTop + pastePosition.top;
}
const pasteConfig = await propsService.setNewItemId(configItem);
const pasteConfig = await propsService.setNewItemId(configItem, false);
if (pasteConfig.style) {
const { left, top } = pasteConfig.style;