Commit 5c00bbda authored by Morson's avatar Morson
parents 3c8038f6 9f6da214
...@@ -2,10 +2,15 @@ ...@@ -2,10 +2,15 @@
// launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
"version": "0.0", "version": "0.0",
"configurations": [{ "configurations": [{
"type": "uniCloud", "default" :
"default": { {
"launchtype": "remote" "launchtype" : "remote"
} },
} "mp-weixin" :
{
"launchtype" : "remote"
},
"type" : "uniCloud"
}
] ]
} }
export default [{ export default [{
"groupName": "女装", "groupName": "女装",
"item": [{ "item": [{
"required": true,
"fieldsTitle": "A字裙多个",
"fieldsName": "name",
"fieldsType": "multiInput",
"fieldsValue": "",
"inputOptions":[{
"fieldsTitle": "A字裙",
"fieldsName": "name1",
"fieldsType": "text",
},{
"fieldsTitle": "A字裙",
"fieldsName": "name2",
"fieldsType": "text",
},{
"fieldsTitle": "A字裙",
"fieldsName": "name3",
"fieldsType": "text",
},{
"fieldsTitle": "A字裙",
"fieldsName": "name3",
"fieldsType": "text",
},{
"fieldsTitle": "A字裙",
"fieldsName": "name4",
"fieldsType": "text",
},{
"fieldsTitle": "A字裙",
"fieldsName": "name5",
"fieldsType": "text",
},],
"key": "A字裙",
"icon": "https://cdn.uviewui.com/uview/common/classify/1/1.jpg",
"cat": 10
},{
"required": true, "required": true,
"fieldsTitle": "A字裙", "fieldsTitle": "A字裙",
"fieldsName": "name", "fieldsName": "name",
"fieldsType": "text", "fieldsType": "input",
"fieldsValue": "", "fieldsValue": "",
"span":8,
"key": "A字裙", "key": "A字裙",
"icon": "https://cdn.uviewui.com/uview/common/classify/1/1.jpg", "icon": "https://cdn.uviewui.com/uview/common/classify/1/1.jpg",
"cat": 10 "cat": 10
...@@ -73,7 +108,10 @@ export default [{ ...@@ -73,7 +108,10 @@ export default [{
"cat": 10 "cat": 10
}, },
{ {
"fieldsTitle": "牛仔裤", "fieldsTitle": "时间选择",
"fieldsName": "time",
"fieldsType": "time",
"required": true,
"key": "牛仔裤", "key": "牛仔裤",
"icon": "https://cdn.uviewui.com/uview/common/classify/1/9.jpg", "icon": "https://cdn.uviewui.com/uview/common/classify/1/9.jpg",
"cat": 10 "cat": 10
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<u-icon name="arrow-right" color="#666" size="28"></u-icon> <u-icon name="arrow-right" color="#666" size="28"></u-icon>
</view> </view>
<view class="pics u-flex u-flex-wrap"> <view class="pics u-flex u-flex-wrap">
<u-image class="pic" v-for="(item,index) in imgList" width="170rpx" height="170" :src="item.path"></u-image> <u-image class="pic" v-for="(item,index) in imgList" width="170rpx" height="170" :src="item.path" :key="index"></u-image>
<!-- <u-image class="pic" v-for="item in 6" width="170rpx" height="170" src="'https://cdn.uviewui.com/uview/example/fade.jpg"></u-image> --> <!-- <u-image class="pic" v-for="item in 6" width="170rpx" height="170" src="'https://cdn.uviewui.com/uview/example/fade.jpg"></u-image> -->
</view> </view>
<u-popup v-model="maskShow" mode="center" width="500"> <u-popup v-model="maskShow" mode="center" width="500">
......
<!-- ******************* 多个输入框 ******************* -->
<template>
<view class="u-flex u-flex-wrap">
<u-input class="input-item" v-for="(item,index) in inputOptions" v-model="item.value" @input="val=>{getValue(item)}" type="text" :key="index"/>
</view>
</template>
<script>
import objMixin from './objMixin'
export default {
name: 'XhMultiInput',
components: {},
mixins: [objMixin],
props: {},
data() {
return {}
},
computed: {
inputOptions() {
let options = this.item.inputOptions || []
let result = options.map(item => {
return {
...item,
value: ''
}
})
return result
}
},
watch: {},
mounted() {},
methods: {
getValue(item){
let currentValue = {}
currentValue[item.fieldsName] = item.value
// 以key,value的对象形式传递
this.valueChange(currentValue)
}
}
}
</script>
<style>
.input-item{
width:33.3%;
}
</style>
<!-- ******************* 输入框 ******************* --> <!-- ******************* 输入框 ******************* -->
<template> <template>
<view> <view class="picker-box">
<u-input v-model="dataValue" @input="valueChange" :type="type" /> <view class="u-flex u-row-between" @click="openPicker">
<view class="txt">{{item.fieldsTitle}}</view>
<view class="txt u-flex-1">{{dataValue}}</view>
<u-icon name="arrow-right" color="#666" size="28"></u-icon>
</view>
<u-picker :params="params" v-model="showPicker" mode="time" @confirm="pickerConfirm"></u-picker>
<!-- <u-picker v-model="showPicker" :rangeKey="rangeKey" @columnchange="columnchange" mode="multiSelector" @confirm="pickerConfirm" :default-selector='[0, 1]' :range="settings"></u-picker> -->
</view> </view>
</template> </template>
...@@ -13,7 +19,19 @@ ...@@ -13,7 +19,19 @@
mixins: [stringMixin], mixins: [stringMixin],
props: {}, props: {},
data() { data() {
return {} return {
showPicker: false,
params: {
year: true,
month: true,
day: true,
hour: true,
minute: true,
second: true,
// 选择时间的时间戳
timestamp: true,
}
}
}, },
computed: { computed: {
type() { type() {
...@@ -26,7 +44,20 @@ ...@@ -26,7 +44,20 @@
}, },
watch: {}, watch: {},
mounted() {}, mounted() {},
methods: {} methods: {
openPicker() {
this.showPicker = true
},
pickerConfirm(data) {
console.log(data, 'DATA')
let result = []
let dataValue = data.year + '-' + data.month + '-' + data.day + ' ' + data.hour + ':' + data.minute +
':' + data.second
console.log(dataValue, 'dataValue')
this.dataValue = dataValue
this.valueChange(dataValue)
},
}
} }
</script> </script>
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
}, },
computed: { computed: {
url() { url() {
return qn_base_url + 'top' + this.index + '.png' return qn_base_url + 'topback' + this.index + '.png'
} }
} }
} }
...@@ -45,9 +45,6 @@ ...@@ -45,9 +45,6 @@
.settle-bottom { .settle-bottom {
position: fixed; position: fixed;
bottom: 44rpx; bottom: 44rpx;
width: 100%; width: 100%;
display: flex;
align-items: center;
justify-content: center;
} }
</style> </style>
<template> <template>
<view class="backView"> <view class="backView">
<Settle :index="2"> <Settle :index="3">
<!-- <template v-if="isStart==false"> <!-- <template v-if="isStart==false">
<view class="noticeView"> <view class="noticeView">
<text class="noticeText">规则:系统随机出现20道考试题目,每道题5分,每题答题时间100秒,在规定时间内答对题目的记分。 <text class="noticeText">规则:系统随机出现20道考试题目,每道题5分,每题答题时间100秒,在规定时间内答对题目的记分。
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
<!-- <template v-if="isStart==true && currentItem"> --> <!-- <template v-if="isStart==true && currentItem"> -->
<view class="bottom-padding" v-if="currentItem"> <view class="bottom-padding" v-if="currentItem">
<view class="title-view"> <view class="title-view">
<view class="title-text"> <view :class="['title-text', {'radio': currentItem.question.answerType == 1}]">
<text>{{ titleText[Math.max(0, currentItem.question.answerType - 1)] }}</text> <text>{{ titleText[Math.max(0, currentItem.question.answerType - 1)] }}</text>
</view> </view>
<view class="title-right-view"> <view class="title-right-view">
...@@ -737,7 +737,10 @@ ...@@ -737,7 +737,10 @@
height: 40rpx; height: 40rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
&.radio {
background-color: #2272FF;
}
} }
.title-right-view { .title-right-view {
...@@ -757,7 +760,7 @@ ...@@ -757,7 +760,7 @@
} }
.time-count-down { .time-count-down {
width: 80rpx; width: 50rpx;
text-align: right; text-align: right;
} }
} }
......
This diff is collapsed.
...@@ -138,7 +138,7 @@ ...@@ -138,7 +138,7 @@
} }
}, },
tips1Image() { tips1Image() {
return qn_base_url + 'tips1@3x.png' return qn_base_url + 'tips1.png'
} }
}, },
onLoad() { onLoad() {
...@@ -238,7 +238,9 @@ ...@@ -238,7 +238,9 @@
} }
.tip-image { .tip-image {
width: 28rpx; width: 26rpx;
height: 32rpx;
flex-shrink: 0;
margin-right: 10rpx; margin-right: 10rpx;
margin-top: 2rpx; margin-top: 2rpx;
} }
...@@ -295,7 +297,8 @@ ...@@ -295,7 +297,8 @@
padding-top: 8rpx; padding-top: 8rpx;
padding-right: 2rpx; padding-right: 2rpx;
text-align: center; text-align: center;
margin-right: 20rpx; margin-right: 20rpx;
line-height: 24rpx;
.item-st-text { .item-st-text {
color: #FFFFFF; color: #FFFFFF;
} }
......
...@@ -32,6 +32,10 @@ ...@@ -32,6 +32,10 @@
<xh-input v-if="typeToComponentType(item.fieldsType)==='input'" :groupIndex="groupIndex" <xh-input v-if="typeToComponentType(item.fieldsType)==='input'" :groupIndex="groupIndex"
:itemIndex="itemIndex" :item="item" @value-change="fieldValueChange"> :itemIndex="itemIndex" :item="item" @value-change="fieldValueChange">
</xh-input> </xh-input>
<xh-multi-input v-else-if="typeToComponentType(item.fieldsType)==='multiinput'"
:groupIndex="groupIndex" :itemIndex="itemIndex" :item="item"
@value-change="fieldValueChange">
</xh-multi-input>
<xh-radio v-else-if="typeToComponentType(item.fieldsType)==='radio'" <xh-radio v-else-if="typeToComponentType(item.fieldsType)==='radio'"
:groupIndex="groupIndex" :itemIndex="itemIndex" :item="item" :groupIndex="groupIndex" :itemIndex="itemIndex" :item="item"
@value-change="fieldValueChange"> @value-change="fieldValueChange">
...@@ -60,6 +64,10 @@ ...@@ -60,6 +64,10 @@
:groupIndex="groupIndex" :itemIndex="itemIndex" :item="item" :groupIndex="groupIndex" :itemIndex="itemIndex" :item="item"
@value-change="fieldValueChange"> @value-change="fieldValueChange">
</xh-picker> </xh-picker>
<xh-time v-else-if="typeToComponentType(item.fieldsType)==='time'"
:groupIndex="groupIndex" :itemIndex="itemIndex" :item="item"
@value-change="fieldValueChange">
</xh-time>
</template> </template>
</u-form-item> </u-form-item>
</view> </view>
...@@ -74,6 +82,7 @@ ...@@ -74,6 +82,7 @@
<script> <script>
import classifyData from '@/common/classify.data.js'; import classifyData from '@/common/classify.data.js';
import XhInput from '@/components/createCom/XhInput.vue' import XhInput from '@/components/createCom/XhInput.vue'
import XhMultiInput from '@/components/createCom/XhMultiInput.vue'
import XhRadio from '@/components/createCom/XhRadio.vue' import XhRadio from '@/components/createCom/XhRadio.vue'
import XhCheckbox from '@/components/createCom/XhCheckbox.vue' import XhCheckbox from '@/components/createCom/XhCheckbox.vue'
import XhSelect from '@/components/createCom/XhSelect.vue' import XhSelect from '@/components/createCom/XhSelect.vue'
...@@ -81,6 +90,8 @@ ...@@ -81,6 +90,8 @@
import XhLocation from '@/components/createCom/XhLocation.vue' import XhLocation from '@/components/createCom/XhLocation.vue'
import XhScan from '@/components/createCom/XhScan.vue' import XhScan from '@/components/createCom/XhScan.vue'
import XhPicker from '@/components/createCom/XhPicker.vue' import XhPicker from '@/components/createCom/XhPicker.vue'
import XhTime from '@/components/createCom/XhTime.vue'
// import XhRadio from '@/components/createCom/XhRadio.vue' // import XhRadio from '@/components/createCom/XhRadio.vue'
export default { export default {
data() { data() {
...@@ -130,14 +141,15 @@ ...@@ -130,14 +141,15 @@
}, },
components: { components: {
XhInput, XhInput,
XhMultiInput,
XhRadio, XhRadio,
XhCheckbox, XhCheckbox,
XhSelect, XhSelect,
XhFiles, XhFiles,
XhLocation, XhLocation,
XhScan, XhScan,
XhPicker XhPicker,
// formCom XhTime,
}, },
created() { created() {
// console.log(allComponents,'allComponents') // console.log(allComponents,'allComponents')
...@@ -163,8 +175,14 @@ ...@@ -163,8 +175,14 @@
if (groupItem.item) { if (groupItem.item) {
innerItem = groupItem.item[data.itemIndex] innerItem = groupItem.item[data.itemIndex]
} }
console.log(innerItem, 'innerItem') console.log(data.value,'data.value',innerItem, 'innerItem')
this.form[innerItem.fieldsName] = data.value if(innerItem.fieldsType ==='multiInput'){
// 多个输入框的值触发
let key = Object.keys(data.value)[0]
this.form[key] = data.value[key]
}else{
this.form[innerItem.fieldsName] = data.value
}
console.log(this.form, 'this.form') console.log(this.form, 'this.form')
}, },
nextStep(item) { nextStep(item) {
...@@ -175,6 +193,7 @@ ...@@ -175,6 +193,7 @@
// 将fieldType类型统一转换为公共组件判定类型 // 将fieldType类型统一转换为公共组件判定类型
let formType = '' let formType = ''
type = type.toLocaleLowerCase() type = type.toLocaleLowerCase()
console.log(type,'type')
switch (type) { switch (type) {
case 'text': case 'text':
case 'password': case 'password':
...@@ -182,6 +201,9 @@ ...@@ -182,6 +201,9 @@
case 'number': case 'number':
formType = 'input' formType = 'input'
break break
case 'multiinput':
formType = 'multiinput'
break;
case 'select': case 'select':
formType = 'select' formType = 'select'
break break
...@@ -201,10 +223,14 @@ ...@@ -201,10 +223,14 @@
case 'mutipicker': case 'mutipicker':
formType = 'picker' formType = 'picker'
break break
case 'time':
formType = 'time'
break
// case 'file': // case 'file':
// formType = 'XhFiles' // formType = 'XhFiles'
// break // break
} }
console.log(formType,'formType')
return formType return formType
}, },
// ------------------------- 以下方法为展示滚动切换 ------------------------- // ------------------------- 以下方法为展示滚动切换 -------------------------
......
<template> <template>
<view class="img-wrap rel"> <view class="img-wrap rel">
<view class="upload-box"> <view class="upload-box">
<view class="img-item pic" v-for="(file,index) in imgList" > <view class="img-item pic" v-for="(file,index) in imgList" :key="index" >
<!-- <view class="tip-sucess u-flex u-row-center" v-if="file && (file.status == status.QUEUED || file.status == status.UPLOADING)"> <!-- <view class="tip-sucess u-flex u-row-center" v-if="file && (file.status == status.QUEUED || file.status == status.UPLOADING)">
<span>正在上传中...{{file.percent}}%</span> <span>正在上传中...{{file.percent}}%</span>
</view> --> </view> -->
......
...@@ -227,18 +227,18 @@ ...@@ -227,18 +227,18 @@
margin-top: 20rpx; margin-top: 20rpx;
} }
.bottom_btn { // .bottom_btn {
width: 600rpx; // width: 600rpx;
height: 104rpx; // height: 104rpx;
line-height: 96rpx; // line-height: 96rpx;
display: flex; // display: flex;
align-items: center; // align-items: center;
justify-content: center; // justify-content: center;
.bottom_title { // .bottom_title {
color: #fff; // color: #fff;
} // }
} // }
.bottom_title { .bottom_title {
font-weight: bold; font-weight: bold;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<view class="content"> <view class="content">
<Settle :index="5"> <Settle :index="5">
<view class="base-list"> <view class="base-list">
<view class="title">充电桩安装需缴纳设备押金</view> <view class="title">充电桩安装需缴纳配件押金</view>
<view class="price"><text>¥ </text>{{settledInfo.record.deposit}}</view> <view class="price"><text>¥ </text>{{settledInfo.record.deposit}}</view>
<view class="list"> <view class="list">
<view class="item u-flex u-row-between"> <view class="item u-flex u-row-between">
......
...@@ -161,7 +161,7 @@ ...@@ -161,7 +161,7 @@
}, },
goPage() { goPage() {
const url = this.info.url const url = this.info.url
if (this.status == 1 || this.status == 3 || this.status == 3) { if (this.status == 1 || this.status == 3 || this.status == 7) {
uni.reLaunch({ uni.reLaunch({
url, url,
}); });
...@@ -246,7 +246,8 @@ ...@@ -246,7 +246,8 @@
line-height: 104rpx; line-height: 104rpx;
border-radius: 52rpx; border-radius: 52rpx;
background: #2272ff; background: #2272ff;
font-size: 32rpx; font-size: 32rpx;
font-weight: bold;
color: #fff; color: #fff;
&:disabled { &:disabled {
......
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
<view class="btn-wrap flex-xc"> <view class="btn-wrap flex-xc">
<u-button class="btn-submit" @click="$u.debounce(submitBaseInfo, 500)" :custom-style="buttonStyle" <u-button class="btn-submit" @click="$u.debounce(submitBaseInfo, 500)" :custom-style="buttonStyle"
type="primary" shape="circle" :hover-class="submitStatus ? '' : 'none'"> type="primary" shape="circle" :hover-class="submitStatus ? '' : 'none'">
我已确认信息,去签约{{count ? '('+count+')' : ''}} 我已确认信息,点击签约{{count ? '('+count+')' : ''}}
</u-button> </u-button>
</view> </view>
</template> </template>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment