|
@@ -42,6 +42,90 @@ let elementConfig = {
|
|
value: '', // 绑定值
|
|
value: '', // 绑定值
|
|
valueType: 'String' // 值类型
|
|
valueType: 'String' // 值类型
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+let pcElementConfig = {
|
|
|
|
+ elName: '', // 组件名
|
|
|
|
+ animations: [], // 图层的动画,可以支持多个动画
|
|
|
|
+ commonStyle: { //公共样式,默认样式
|
|
|
|
+ position: 'unset',
|
|
|
|
+ width: '100%',
|
|
|
|
+ height: 'auto',
|
|
|
|
+ top: 0,
|
|
|
|
+ left: 0,
|
|
|
|
+ rotate: 0,
|
|
|
|
+ paddingTop: 0,
|
|
|
|
+ paddingLeft: 0,
|
|
|
|
+ paddingRight: 0,
|
|
|
|
+ paddingBottom: 0,
|
|
|
|
+ marginTop: 0,
|
|
|
|
+ marginLeft: 0,
|
|
|
|
+ marginRight: 0,
|
|
|
|
+ marginBottom: 0,
|
|
|
|
+ borderWidth: 0,
|
|
|
|
+ borderColor: '',
|
|
|
|
+ borderStyle: 'solid',
|
|
|
|
+ borderRadius: 0,
|
|
|
|
+ boxShadow: '',
|
|
|
|
+ fontSize: 16,
|
|
|
|
+ fontWeight: 500,
|
|
|
|
+ lineHeight: 1.4,
|
|
|
|
+ letterSpacing: 0,
|
|
|
|
+ textAlign: 'center',
|
|
|
|
+ color: '#000000',
|
|
|
|
+ backgroundColor: '',
|
|
|
|
+ backgroundImage: '',
|
|
|
|
+ backgroundSize: 'cover',
|
|
|
|
+ opacity: 1,
|
|
|
|
+ zIndex: 1
|
|
|
|
+ },
|
|
|
|
+ events: [], // 事件
|
|
|
|
+ propsValue: {}, // 属性参数
|
|
|
|
+ value: '', // 绑定值
|
|
|
|
+ valueType: 'String' // 值类型
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+let longElementConfig = {
|
|
|
|
+ elName: '', // 组件名
|
|
|
|
+ animations: [], // 图层的动画,可以支持多个动画
|
|
|
|
+ commonStyle: { //公共样式,默认样式
|
|
|
|
+ position: 'unset',
|
|
|
|
+ width: '100%',
|
|
|
|
+ height: 'auto',
|
|
|
|
+ top: 0,
|
|
|
|
+ left: 0,
|
|
|
|
+ rotate: 0,
|
|
|
|
+ paddingTop: 0,
|
|
|
|
+ paddingLeft: 0,
|
|
|
|
+ paddingRight: 0,
|
|
|
|
+ paddingBottom: 0,
|
|
|
|
+ marginTop: 0,
|
|
|
|
+ marginLeft: 0,
|
|
|
|
+ marginRight: 0,
|
|
|
|
+ marginBottom: 0,
|
|
|
|
+ borderWidth: 0,
|
|
|
|
+ borderColor: '',
|
|
|
|
+ borderStyle: 'solid',
|
|
|
|
+ borderRadius: 0,
|
|
|
|
+ boxShadow: '',
|
|
|
|
+ fontSize: 16,
|
|
|
|
+ fontWeight: 500,
|
|
|
|
+ lineHeight: 1.4,
|
|
|
|
+ letterSpacing: 0,
|
|
|
|
+ textAlign: 'center',
|
|
|
|
+ color: '#000000',
|
|
|
|
+ backgroundColor: '',
|
|
|
|
+ backgroundImage: '',
|
|
|
|
+ backgroundSize: 'cover',
|
|
|
|
+ opacity: 1,
|
|
|
|
+ zIndex: 1
|
|
|
|
+ },
|
|
|
|
+ events: [], // 事件
|
|
|
|
+ propsValue: {}, // 属性参数
|
|
|
|
+ value: '', // 绑定值
|
|
|
|
+ valueType: 'String' // 值类型
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
// 页面配置信息字段
|
|
// 页面配置信息字段
|
|
let pageConfig = {
|
|
let pageConfig = {
|
|
name: '',
|
|
name: '',
|
|
@@ -73,7 +157,7 @@ let projectConfig = {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
-let getElementConfig = function(element, extendStyle = {}) {
|
|
|
|
|
|
+let getElementConfig = function(element, extendStyle = {}, pageMode) {
|
|
let elementData = cloneDeep(element)
|
|
let elementData = cloneDeep(element)
|
|
let type = elementData.valueType || 'String' // 默认string类型
|
|
let type = elementData.valueType || 'String' // 默认string类型
|
|
let dict = {
|
|
let dict = {
|
|
@@ -84,7 +168,18 @@ let getElementConfig = function(element, extendStyle = {}) {
|
|
'Number': 0
|
|
'Number': 0
|
|
// 待扩展数据类型
|
|
// 待扩展数据类型
|
|
}
|
|
}
|
|
- let elementConfigData = cloneDeep(elementConfig)
|
|
|
|
|
|
+ let modeElementConfig = elementConfig
|
|
|
|
+ switch (pageMode) {
|
|
|
|
+ case 'pc': {
|
|
|
|
+ modeElementConfig = pcElementConfig
|
|
|
|
+ break
|
|
|
|
+ }
|
|
|
|
+ case 'longPage': {
|
|
|
|
+ modeElementConfig = longElementConfig
|
|
|
|
+ break
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ let elementConfigData = cloneDeep(modeElementConfig)
|
|
let config = {
|
|
let config = {
|
|
uuid: createUUID(),
|
|
uuid: createUUID(),
|
|
...elementConfigData,
|
|
...elementConfigData,
|
|
@@ -132,10 +227,12 @@ let getProjectConfig = function(pageType) {
|
|
})
|
|
})
|
|
switch (pageType) {
|
|
switch (pageType) {
|
|
case 'longPage': {
|
|
case 'longPage': {
|
|
|
|
+ project.height = 'auto'
|
|
break
|
|
break
|
|
}
|
|
}
|
|
case 'pc': {
|
|
case 'pc': {
|
|
project.width = 1200
|
|
project.width = 1200
|
|
|
|
+ project.height = 'auto'
|
|
break
|
|
break
|
|
}
|
|
}
|
|
}
|
|
}
|