From 8193d05450900487e2f413ab3e85776ab8ecec3e Mon Sep 17 00:00:00 2001 From: xujiang Date: Fri, 25 Sep 2020 00:29:32 +0800 Subject: [PATCH] =?UTF-8?q?:new:=20=E6=96=B0=E5=A2=9E=E7=A9=BA=E7=99=BD?= =?UTF-8?q?=E6=A8=A1=E7=89=88=E7=BB=84=E4=BB=B6=EF=BC=8C=E4=BD=9C=E4=B8=BA?= =?UTF-8?q?=E5=8D=A0=E4=BD=8D=E7=AC=A6=E5=92=8C=E5=8C=BA=E5=9D=97=E4=BD=BF?= =?UTF-8?q?=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BasicComponents/WhiteTpl/index.less | 7 +++ .../BasicComponents/WhiteTpl/index.tsx | 25 ++++++++ .../BasicComponents/WhiteTpl/schema.ts | 61 +++++++++++++++++++ .../BasicComponents/WhiteTpl/template.ts | 5 ++ .../BasicShop/BasicComponents/schema.ts | 2 + .../BasicShop/BasicComponents/template.ts | 2 + 6 files changed, 102 insertions(+) create mode 100644 src/components/BasicShop/BasicComponents/WhiteTpl/index.less create mode 100644 src/components/BasicShop/BasicComponents/WhiteTpl/index.tsx create mode 100644 src/components/BasicShop/BasicComponents/WhiteTpl/schema.ts create mode 100644 src/components/BasicShop/BasicComponents/WhiteTpl/template.ts diff --git a/src/components/BasicShop/BasicComponents/WhiteTpl/index.less b/src/components/BasicShop/BasicComponents/WhiteTpl/index.less new file mode 100644 index 0000000..07f7595 --- /dev/null +++ b/src/components/BasicShop/BasicComponents/WhiteTpl/index.less @@ -0,0 +1,7 @@ +.whiteTpl { + text-align: center; + .title { + font-size: 14px; + color: #fff; + } +} diff --git a/src/components/BasicShop/BasicComponents/WhiteTpl/index.tsx b/src/components/BasicShop/BasicComponents/WhiteTpl/index.tsx new file mode 100644 index 0000000..0361248 --- /dev/null +++ b/src/components/BasicShop/BasicComponents/WhiteTpl/index.tsx @@ -0,0 +1,25 @@ +import { memo } from 'react'; +import styles from './index.less'; +import React from 'react'; +import { IWhiteTplConfig } from './schema'; + +interface IProps extends IWhiteTplConfig { + isTpl: boolean; +} + +const WhiteTpl = memo((props: IProps) => { + const { bgColor, text, fontSize, color, height, isTpl } = props; + console.log('data', bgColor, text, fontSize, color, height); + return ( +
+
+ {isTpl ? '空白模版' : text} +
+
+ ); +}); + +export default WhiteTpl; diff --git a/src/components/BasicShop/BasicComponents/WhiteTpl/schema.ts b/src/components/BasicShop/BasicComponents/WhiteTpl/schema.ts new file mode 100644 index 0000000..263df92 --- /dev/null +++ b/src/components/BasicShop/BasicComponents/WhiteTpl/schema.ts @@ -0,0 +1,61 @@ +import { + IColorConfigType, + INumberConfigType, + ITextConfigType, + TColorDefaultType, + TNumberDefaultType, + TTextDefaultType, +} from '@/components/PanelComponents/FormEditor/types'; + +export type TWhiteTplEditData = Array; +export interface IWhiteTplConfig { + bgColor: TColorDefaultType; + text: TTextDefaultType; + fontSize: TNumberDefaultType; + color: TColorDefaultType; + height: TNumberDefaultType; +} + +export interface IWhiteTplSchema { + editData: TWhiteTplEditData; + config: IWhiteTplConfig; +} + +const WhiteTpl: IWhiteTplSchema = { + editData: [ + { + key: 'bgColor', + name: '背景色', + type: 'Color', + }, + { + key: 'height', + name: '高度', + type: 'Number', + }, + { + key: 'text', + name: '文字', + type: 'Text', + }, + { + key: 'color', + name: '文字颜色', + type: 'Color', + }, + { + key: 'fontSize', + name: '文字大小', + type: 'Number', + }, + ], + config: { + bgColor: 'rgba(255,255,255,1)', + text: '', + fontSize: 16, + color: 'rgba(210,210,210,1)', + height: 30, + }, +}; + +export default WhiteTpl; diff --git a/src/components/BasicShop/BasicComponents/WhiteTpl/template.ts b/src/components/BasicShop/BasicComponents/WhiteTpl/template.ts new file mode 100644 index 0000000..f8bf50d --- /dev/null +++ b/src/components/BasicShop/BasicComponents/WhiteTpl/template.ts @@ -0,0 +1,5 @@ +const template = { + type: 'WhiteTpl', + h: 20, +}; +export default template; diff --git a/src/components/BasicShop/BasicComponents/schema.ts b/src/components/BasicShop/BasicComponents/schema.ts index 983dff2..b4e6bf1 100644 --- a/src/components/BasicShop/BasicComponents/schema.ts +++ b/src/components/BasicShop/BasicComponents/schema.ts @@ -3,6 +3,7 @@ import Footer from './Footer/schema'; import Form from './Form/schema'; import Header from './Header/schema'; import Icon from './Icon/schema'; +import WhiteTpl from './WhiteTpl/schema'; import Image from './Image/schema'; import List from './List/schema'; import LongText from './LongText/schema'; @@ -20,6 +21,7 @@ const basicSchema = { Image, List, LongText, + WhiteTpl, Notice, Qrcode, Tab, diff --git a/src/components/BasicShop/BasicComponents/template.ts b/src/components/BasicShop/BasicComponents/template.ts index ae567de..bb90856 100644 --- a/src/components/BasicShop/BasicComponents/template.ts +++ b/src/components/BasicShop/BasicComponents/template.ts @@ -10,6 +10,7 @@ import Notice from './Notice/template'; import Qrcode from './Qrcode/template'; import Tab from './Tab/template'; import Text from './Text/template'; +import WhiteTpl from './WhiteTpl/template'; const basicTemplate = [ Carousel, @@ -24,6 +25,7 @@ const basicTemplate = [ Qrcode, Tab, Text, + WhiteTpl, ]; const BasicTemplate = basicTemplate.map(v => { return { ...v, category: 'base' };