|
|
@ -3,17 +3,24 @@ |
|
|
|
<u-card :show-foot="false" :show-head="false" :style="{ height: isShrink ? '96rpx' : '300rpx' }" border-radius="25" margin="0"> |
|
|
|
<view slot="body"> |
|
|
|
<scroll-view :scrollY="true" :style="{ height: isShrink ? '40rpx' : '240rpx' }"> |
|
|
|
<skeleton :banner="false" :loading="!plugins.length" :row="4" animate class="mt-2 u-line-2 skeleton"></skeleton> |
|
|
|
<view class="p-0 u-col-between"> |
|
|
|
<view class="grid grid-cols-3 gap-2 h-auto" v-if="plugins.length"> |
|
|
|
<Plugin |
|
|
|
:class="getClass(plugin.colspan, plugin.rowspan)" |
|
|
|
:key="pluginIndex" |
|
|
|
:pluginId="plugin.pluginId" |
|
|
|
:styleType="plugin.styleType || 0" |
|
|
|
v-for="(plugin, pluginIndex) in plugins" |
|
|
|
/> |
|
|
|
</view> |
|
|
|
<skeleton :banner="false" :loading="!tasks.length" :row="4" animate class="mt-2 u-line-2 skeleton"></skeleton> |
|
|
|
<view class="grid grid-cols-3 gap-2 h-auto"> |
|
|
|
<template v-for="item in tasks"> |
|
|
|
<template v-if="item.plugins"> |
|
|
|
<template v-for="(pluginArr, arrIndex) in item.plugins"> |
|
|
|
<view class="p-0 u-col-between" :key="pluginArr[arrIndex].pluginTaskId"> |
|
|
|
<Plugin |
|
|
|
:item="item" |
|
|
|
:class="getClass(plugin.col, plugin.row)" |
|
|
|
:key="plugin.pluginTaskId" |
|
|
|
:pluginId="plugin.pluginId" |
|
|
|
:styleType="plugin.styleType || 0" |
|
|
|
v-for="plugin in pluginArr" |
|
|
|
/> |
|
|
|
</view> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</view> |
|
|
|
</scroll-view> |
|
|
|
</view> |
|
|
@ -28,12 +35,10 @@ import Skeleton from '@/components/Skeleton/Skeleton'; |
|
|
|
export default { |
|
|
|
name: 'Global', |
|
|
|
components: { Skeleton }, |
|
|
|
props: { plugins: { type: Array, default: () => [] } }, |
|
|
|
props: { tasks: { type: Array, default: () => [] } }, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
// loading: true, |
|
|
|
pluginId: 0, |
|
|
|
styleType: 0, |
|
|
|
task: null, |
|
|
|
}; |
|
|
|
}, |
|
|
|