diff --git a/preview/views/MainView.vue b/preview/views/MainView.vue
index 50f1abd..1d2ab0c 100644
--- a/preview/views/MainView.vue
+++ b/preview/views/MainView.vue
@@ -19,14 +19,14 @@
@start="onStart"
@end="onEnd"
>
-
([]);
-const list = ref([]);
+let componentsList = [];
const store = useSchemeStore();
watch(store, (n, e) => {
@@ -90,7 +88,7 @@ store.$onAction(
onError, // action 抛出或拒绝的钩子
}) => {
after((result) => {
- scheme.value = result
+ console.log(result);
})
// 如果 action 抛出或返回一个拒绝的 promise,这将触发
onError((error) => {
@@ -102,15 +100,15 @@ store.$onAction(
)
//初始化scheme
const initScheme = () => {
- store.initScheme([baseScheme])
+ store.initPreviewScheme([baseScheme])
+ componentsList = Object.values(componentScheme);
+ store.initComponents(componentsList);
}
onMounted(() => {
- componentsList.value = Object.values(componentScheme);
initScheme();
// @ts-ignore
- list.value.push(baseScheme)
});
const clone = function (element: IComponent) {
@@ -133,9 +131,9 @@ const clone = function (element: IComponent) {
}
const onEnd = (obj: any) => {
- const {oldDraggableIndex} = obj;
- store.previewData(store.component[oldDraggableIndex]);
- store.nowComponentsData(store.component[oldDraggableIndex]);
+ // const {oldDraggableIndex} = obj;
+ // store.previewData(store.component[oldDraggableIndex]);
+ // store.nowComponentsData(store.component[oldDraggableIndex]);
};
const onStart = function () {
@@ -176,6 +174,7 @@ const view = () => {
overflow: hidden;
background-color: #fff;
border-top: 1px solid #dddddd;
+ overflow-y: auto;
.title {
font-size: 16px;
diff --git a/src/stores/useSchemeStore.ts b/src/stores/useSchemeStore.ts
index 824bc60..d143796 100644
--- a/src/stores/useSchemeStore.ts
+++ b/src/stores/useSchemeStore.ts
@@ -1,40 +1,49 @@
-import { defineStore } from 'pinia'
-import { IPageComponent } from '../type/IPageComponent';
-import { ref } from 'vue';
+import {defineStore} from 'pinia'
+import {IPageComponent} from '../type/IPageComponent';
+import {ref} from 'vue';
function findObjectById(obj, targetId) {
- if (Array.isArray(obj)) {
- for (let item of obj) {
- let found = findObjectById(item, targetId);
- if (found) return found;
+ if (Array.isArray(obj)) {
+ for (let item of obj) {
+ let found = findObjectById(item, targetId);
+ if (found) return found;
+ }
+ } else if (typeof obj === 'object' && obj !== null) {
+ if (obj.id === targetId) {
+ return obj;
+ }
+ for (let key in obj) {
+ if (obj.hasOwnProperty(key)) {
+ let found = findObjectById(obj[key], targetId);
+ if (found) return found;
+ }
+ }
}
- } else if (typeof obj === 'object' && obj !== null) {
- if (obj.id === targetId) {
- return obj;
- }
- for (let key in obj) {
- if (obj.hasOwnProperty(key)) {
- let found = findObjectById(obj[key], targetId);
- if (found) return found;
- }
- }
- }
- return null; // 如果没有找到,则返回null
+ return null; // 如果没有找到,则返回null
}
+
export const useSchemeStore = defineStore('scheme', () => {
- // const componnets = ref()
- const previewData = ref()
- const nowComponentsData = ref()
+ const components = ref()
+ const previewScheme = ref()
+ const nowComponentsData = ref()
- function initScheme(value) {
- previewData.value = value
- }
- function getSchemeObj(id) {
- return findObjectById(previewData.value, id)
- }
- function updateScheme()
- {
+ function initPreviewScheme(value) {
+ previewScheme.value = value
+ nowComponentsData.value=value[0]
+ }
- }
- return { previewData,nowComponentsData, initScheme, getSchemeObj,updateScheme }
+
+ function initComponents(value:IPageComponent[]) {
+ components.value = value
+ }
+
+ function getSchemeObj(id) {
+ return findObjectById(previewScheme.value, id)
+ }
+
+ function updateScheme() {
+
+ }
+
+ return {previewScheme, components, nowComponentsData, initComponents, initPreviewScheme, getSchemeObj, updateScheme}
})
\ No newline at end of file