|
@@ -12,38 +12,29 @@
|
|
|
<MagicImg v-if="item.comName === 'MagicImg'" :modelData="item.modelData" />
|
|
<MagicImg v-if="item.comName === 'MagicImg'" :modelData="item.modelData" />
|
|
|
<Notice v-if="item.comName === 'Notice'" :modelData="item.modelData" :noticeData="item.data" />
|
|
<Notice v-if="item.comName === 'Notice'" :modelData="item.modelData" :noticeData="item.data" />
|
|
|
<NavBar v-if="item.comName === 'NavBar'" :modelData="item.modelData" />
|
|
<NavBar v-if="item.comName === 'NavBar'" :modelData="item.modelData" />
|
|
|
|
|
+ <view class="" v-if="temData[index].comName === 'NavBar' && temData[index+1].comName !== 'NavBar'">
|
|
|
|
|
+ <image src="http://up.liuniukj.com/167307900573324/931544405107da76ca2ec31cd63fae49/yyzq.png" mode=""
|
|
|
|
|
+ class="banner-ad"
|
|
|
|
|
+ @click="goPage('/pagesT/unit/item')"></image>
|
|
|
|
|
+ </view>
|
|
|
<AdvGroup v-if="item.comName === 'AdvGroup'" :modelData="item.modelData" />
|
|
<AdvGroup v-if="item.comName === 'AdvGroup'" :modelData="item.modelData" />
|
|
|
- <GoodsGroup v-if="item.comName === 'GoodsGroup'" :modelData="item.modelData" :goodsList="item.data" :showGoodsPrice="showGoodsPrice" :selAddress="selAddressD" />
|
|
|
|
|
- <LimitedSeckill
|
|
|
|
|
- v-if="item.comName === 'LimitedSeckill'"
|
|
|
|
|
- :modelData="item.modelData"
|
|
|
|
|
- :goodsList="item.data"
|
|
|
|
|
- :showGoodsPrice="showGoodsPrice"
|
|
|
|
|
- :selAddress="selAddressD"
|
|
|
|
|
- />
|
|
|
|
|
|
|
+ <GoodsGroup v-if="item.comName === 'GoodsGroup'" :modelData="item.modelData" :goodsList="item.data"
|
|
|
|
|
+ :showGoodsPrice="showGoodsPrice" :selAddress="selAddressD" />
|
|
|
|
|
+ <LimitedSeckill v-if="item.comName === 'LimitedSeckill'" :modelData="item.modelData" :goodsList="item.data"
|
|
|
|
|
+ :showGoodsPrice="showGoodsPrice" :selAddress="selAddressD" />
|
|
|
<CouponGroup v-if="item.comName === 'CouponGroup'" :modelData="item.modelData" :couponList="item.data" />
|
|
<CouponGroup v-if="item.comName === 'CouponGroup'" :modelData="item.modelData" :couponList="item.data" />
|
|
|
<LineF v-if="item.comName === 'LineF'" :modelData="item.modelData" />
|
|
<LineF v-if="item.comName === 'LineF'" :modelData="item.modelData" />
|
|
|
<Blank v-if="item.comName === 'Blank'" :modelData="item.modelData" />
|
|
<Blank v-if="item.comName === 'Blank'" :modelData="item.modelData" />
|
|
|
- <div
|
|
|
|
|
- v-if="item.comName === 'FloatBth'"
|
|
|
|
|
- class="float-bth"
|
|
|
|
|
- @click="btnEvent(item)"
|
|
|
|
|
- :style="{
|
|
|
|
|
|
|
+ <div v-if="item.comName === 'FloatBth'" class="float-bth" @click="btnEvent(item)" :style="{
|
|
|
backgroundColor: item.modelData.btnStyle === 2 ? item.modelData.bgColor : 'transparent',
|
|
backgroundColor: item.modelData.btnStyle === 2 ? item.modelData.bgColor : 'transparent',
|
|
|
borderColor: item.modelData.btnStyle === 2 ? item.modelData.bgColor : '#999999'
|
|
borderColor: item.modelData.btnStyle === 2 ? item.modelData.bgColor : '#999999'
|
|
|
- }"
|
|
|
|
|
- >
|
|
|
|
|
|
|
+ }">
|
|
|
<image :src="item.modelData.image" class="float-img" />
|
|
<image :src="item.modelData.image" class="float-img" />
|
|
|
</div>
|
|
</div>
|
|
|
<!-- #ifdef MP-WEIXIN -->
|
|
<!-- #ifdef MP-WEIXIN -->
|
|
|
- <button
|
|
|
|
|
- v-if="item.comName === 'wxService'"
|
|
|
|
|
- class="float-bth wxService"
|
|
|
|
|
- :style="{
|
|
|
|
|
|
|
+ <button v-if="item.comName === 'wxService'" class="float-bth wxService" :style="{
|
|
|
color: item.modelData.color
|
|
color: item.modelData.color
|
|
|
- }"
|
|
|
|
|
- open-type="contact"
|
|
|
|
|
- >
|
|
|
|
|
|
|
+ }" open-type="contact">
|
|
|
<text class="ibonfont ibonkefu"></text>
|
|
<text class="ibonfont ibonkefu"></text>
|
|
|
</button>
|
|
</button>
|
|
|
<!-- #endif -->
|
|
<!-- #endif -->
|
|
@@ -57,194 +48,213 @@
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
-import SearchC from './components/Search.vue';
|
|
|
|
|
-import ImgSwiper from './components/Banner.vue';
|
|
|
|
|
-import MagicImg from './components/MagicImg.vue';
|
|
|
|
|
-import Notice from './components/Notice.vue';
|
|
|
|
|
-import NavBar from './components/NavBar.vue';
|
|
|
|
|
-import GoodsGroup from './components/GoodsGroup.vue';
|
|
|
|
|
-import LimitedSeckill from './components/LimitedSeckill.vue';
|
|
|
|
|
-import CouponGroup from './components/CouponGroup.vue';
|
|
|
|
|
-import LineF from './components/Line.vue';
|
|
|
|
|
-import Blank from './components/Blank.vue';
|
|
|
|
|
-import AdvGroup from './components/AdvGroup.vue';
|
|
|
|
|
-// import NavigationBar from './components/NavigationBar.vue';
|
|
|
|
|
-
|
|
|
|
|
-export default {
|
|
|
|
|
- name: 'PageDesign',
|
|
|
|
|
- components: {
|
|
|
|
|
- SearchC,
|
|
|
|
|
- ImgSwiper,
|
|
|
|
|
- MagicImg,
|
|
|
|
|
- Notice,
|
|
|
|
|
- NavBar,
|
|
|
|
|
- GoodsGroup,
|
|
|
|
|
- LimitedSeckill,
|
|
|
|
|
- CouponGroup,
|
|
|
|
|
- LineF,
|
|
|
|
|
- Blank,
|
|
|
|
|
- AdvGroup
|
|
|
|
|
- // NavigationBar
|
|
|
|
|
- },
|
|
|
|
|
- props: {
|
|
|
|
|
- showGoodsPrice: {
|
|
|
|
|
- type: [Number, String],
|
|
|
|
|
- default: ''
|
|
|
|
|
|
|
+ import SearchC from './components/Search.vue';
|
|
|
|
|
+ import ImgSwiper from './components/Banner.vue';
|
|
|
|
|
+ import MagicImg from './components/MagicImg.vue';
|
|
|
|
|
+ import Notice from './components/Notice.vue';
|
|
|
|
|
+ import NavBar from './components/NavBar.vue';
|
|
|
|
|
+ import GoodsGroup from './components/GoodsGroup.vue';
|
|
|
|
|
+ import LimitedSeckill from './components/LimitedSeckill.vue';
|
|
|
|
|
+ import CouponGroup from './components/CouponGroup.vue';
|
|
|
|
|
+ import LineF from './components/Line.vue';
|
|
|
|
|
+ import Blank from './components/Blank.vue';
|
|
|
|
|
+ import AdvGroup from './components/AdvGroup.vue';
|
|
|
|
|
+ // import NavigationBar from './components/NavigationBar.vue';
|
|
|
|
|
+
|
|
|
|
|
+ export default {
|
|
|
|
|
+ name: 'PageDesign',
|
|
|
|
|
+ components: {
|
|
|
|
|
+ SearchC,
|
|
|
|
|
+ ImgSwiper,
|
|
|
|
|
+ MagicImg,
|
|
|
|
|
+ Notice,
|
|
|
|
|
+ NavBar,
|
|
|
|
|
+ GoodsGroup,
|
|
|
|
|
+ LimitedSeckill,
|
|
|
|
|
+ CouponGroup,
|
|
|
|
|
+ LineF,
|
|
|
|
|
+ Blank,
|
|
|
|
|
+ AdvGroup
|
|
|
|
|
+ // NavigationBar
|
|
|
},
|
|
},
|
|
|
- temData: {
|
|
|
|
|
- type: Array,
|
|
|
|
|
- default: () => {
|
|
|
|
|
- return [];
|
|
|
|
|
|
|
+ props: {
|
|
|
|
|
+ showGoodsPrice: {
|
|
|
|
|
+ type: [Number, String],
|
|
|
|
|
+ default: ''
|
|
|
|
|
+ },
|
|
|
|
|
+ temData: {
|
|
|
|
|
+ type: Array,
|
|
|
|
|
+ default: () => {
|
|
|
|
|
+ return [];
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ pageBack: {
|
|
|
|
|
+ type: Boolean,
|
|
|
|
|
+ default: false
|
|
|
|
|
+ },
|
|
|
|
|
+ isBackIndex: {
|
|
|
|
|
+ type: Boolean,
|
|
|
|
|
+ default: false
|
|
|
|
|
+ },
|
|
|
|
|
+ amapPlugin: {
|
|
|
|
|
+ type: [Object, Function],
|
|
|
|
|
+ default: () => {
|
|
|
|
|
+ return {};
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ selAddress: {
|
|
|
|
|
+ type: Object,
|
|
|
|
|
+ default: () => {
|
|
|
|
|
+ return {};
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
- pageBack: {
|
|
|
|
|
- type: Boolean,
|
|
|
|
|
- default: false
|
|
|
|
|
- },
|
|
|
|
|
- isBackIndex: {
|
|
|
|
|
- type: Boolean,
|
|
|
|
|
- default: false
|
|
|
|
|
- },
|
|
|
|
|
- amapPlugin: {
|
|
|
|
|
- type: [Object, Function],
|
|
|
|
|
- default: () => {
|
|
|
|
|
- return {};
|
|
|
|
|
|
|
+ computed: {
|
|
|
|
|
+ style() {
|
|
|
|
|
+ const systemInfo = uni.getSystemInfoSync();
|
|
|
|
|
+ return `padding-top:${systemInfo.statusBarHeight + 50}px`;
|
|
|
|
|
+ },
|
|
|
|
|
+ location() {
|
|
|
|
|
+ return this.$store.state.locationObj;
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
- selAddress: {
|
|
|
|
|
- type: Object,
|
|
|
|
|
- default: () => {
|
|
|
|
|
- return {};
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- },
|
|
|
|
|
- computed: {
|
|
|
|
|
- style() {
|
|
|
|
|
- const systemInfo = uni.getSystemInfoSync();
|
|
|
|
|
- return `padding-top:${systemInfo.statusBarHeight + 50}px`;
|
|
|
|
|
|
|
+ data() {
|
|
|
|
|
+ return {
|
|
|
|
|
+ selAddressD: {}
|
|
|
|
|
+ };
|
|
|
},
|
|
},
|
|
|
- location() {
|
|
|
|
|
- return this.$store.state.locationObj;
|
|
|
|
|
- }
|
|
|
|
|
- },
|
|
|
|
|
- data() {
|
|
|
|
|
- return {
|
|
|
|
|
- selAddressD: {}
|
|
|
|
|
- };
|
|
|
|
|
- },
|
|
|
|
|
- watch: {
|
|
|
|
|
- selAddress(val) {
|
|
|
|
|
- this.selAddressD = val;
|
|
|
|
|
- }
|
|
|
|
|
- },
|
|
|
|
|
- created() {
|
|
|
|
|
- // console.log(this.$common.getEnToken())
|
|
|
|
|
- // this.getHome();
|
|
|
|
|
- },
|
|
|
|
|
- methods: {
|
|
|
|
|
- backEvent() {
|
|
|
|
|
- if (this.isBackIndex) {
|
|
|
|
|
- this.goPage('/pages/index/index', 'switchTab');
|
|
|
|
|
- } else {
|
|
|
|
|
- uni.navigateBack();
|
|
|
|
|
|
|
+ watch: {
|
|
|
|
|
+ selAddress(val) {
|
|
|
|
|
+ this.selAddressD = val;
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
- openLocation() {
|
|
|
|
|
- this.$emit('openLocation');
|
|
|
|
|
|
|
+ created() {
|
|
|
|
|
+ // console.log(this.$common.getEnToken())
|
|
|
|
|
+ // this.getHome();
|
|
|
},
|
|
},
|
|
|
- getHome() {
|
|
|
|
|
- this.$u.api.getHome().then(res => {
|
|
|
|
|
- uni.stopPullDownRefresh();
|
|
|
|
|
- this.temData = res.data;
|
|
|
|
|
- });
|
|
|
|
|
- },
|
|
|
|
|
- btnEvent(item) {
|
|
|
|
|
- if (item.modelData.btnType === 2) {
|
|
|
|
|
- uni.makePhoneCall({
|
|
|
|
|
- phoneNumber: item.modelData.phone
|
|
|
|
|
- });
|
|
|
|
|
- } else if (item.modelData.btnType === 1) {
|
|
|
|
|
- this.goPage(item.modelData.url, item.modelData.switchTab);
|
|
|
|
|
- } else {
|
|
|
|
|
- uni.pageScrollTo({
|
|
|
|
|
- scrollTop: 0,
|
|
|
|
|
- duration: 300
|
|
|
|
|
|
|
+ methods: {
|
|
|
|
|
+ backEvent() {
|
|
|
|
|
+ if (this.isBackIndex) {
|
|
|
|
|
+ this.goPage('/pages/index/index', 'switchTab');
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.navigateBack();
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ openLocation() {
|
|
|
|
|
+ this.$emit('openLocation');
|
|
|
|
|
+ },
|
|
|
|
|
+ getHome() {
|
|
|
|
|
+ this.$u.api.getHome().then(res => {
|
|
|
|
|
+ uni.stopPullDownRefresh();
|
|
|
|
|
+ this.temData = res.data;
|
|
|
});
|
|
});
|
|
|
|
|
+ },
|
|
|
|
|
+ btnEvent(item) {
|
|
|
|
|
+ if (item.modelData.btnType === 2) {
|
|
|
|
|
+ uni.makePhoneCall({
|
|
|
|
|
+ phoneNumber: item.modelData.phone
|
|
|
|
|
+ });
|
|
|
|
|
+ } else if (item.modelData.btnType === 1) {
|
|
|
|
|
+ this.goPage(item.modelData.url, item.modelData.switchTab);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ uni.pageScrollTo({
|
|
|
|
|
+ scrollTop: 0,
|
|
|
|
|
+ duration: 300
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- }
|
|
|
|
|
-};
|
|
|
|
|
|
|
+ };
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
<style lang="scss">
|
|
<style lang="scss">
|
|
|
-.pageDesin-box {
|
|
|
|
|
- // background-color: #f5f9fc;
|
|
|
|
|
- // padding-top: calc(44px + var(--status-bar-height));
|
|
|
|
|
-}
|
|
|
|
|
-.float-bth {
|
|
|
|
|
- position: fixed;
|
|
|
|
|
- bottom: 150upx;
|
|
|
|
|
- right: 20upx;
|
|
|
|
|
- width: 80upx;
|
|
|
|
|
- height: 80upx;
|
|
|
|
|
- text-align: center;
|
|
|
|
|
- cursor: pointer;
|
|
|
|
|
- border-radius: 100%;
|
|
|
|
|
- border: 1upx solid #999;
|
|
|
|
|
- box-shadow: 0 6upx 20upx #dcdcdc;
|
|
|
|
|
- z-index: 99;
|
|
|
|
|
- .float-img {
|
|
|
|
|
- width: 40upx;
|
|
|
|
|
- height: 40upx;
|
|
|
|
|
- display: inline-block;
|
|
|
|
|
- margin-top: 20upx;
|
|
|
|
|
|
|
+ .pageDesin-box {
|
|
|
|
|
+ // background-color: #f5f9fc;
|
|
|
|
|
+ // padding-top: calc(44px + var(--status-bar-height));
|
|
|
}
|
|
}
|
|
|
-}
|
|
|
|
|
-.wxService {
|
|
|
|
|
- padding: 0;
|
|
|
|
|
- background-color: #ffffff;
|
|
|
|
|
- border: 0 none;
|
|
|
|
|
- bottom: 250upx;
|
|
|
|
|
- line-height: 80upx;
|
|
|
|
|
- .ibonkefu {
|
|
|
|
|
- font-size: 46upx;
|
|
|
|
|
|
|
+
|
|
|
|
|
+ .float-bth {
|
|
|
|
|
+ position: fixed;
|
|
|
|
|
+ bottom: 150upx;
|
|
|
|
|
+ right: 20upx;
|
|
|
|
|
+ width: 80upx;
|
|
|
|
|
+ height: 80upx;
|
|
|
|
|
+ text-align: center;
|
|
|
|
|
+ cursor: pointer;
|
|
|
|
|
+ border-radius: 100%;
|
|
|
|
|
+ border: 1upx solid #999;
|
|
|
|
|
+ box-shadow: 0 6upx 20upx #dcdcdc;
|
|
|
|
|
+ z-index: 99;
|
|
|
|
|
+
|
|
|
|
|
+ .float-img {
|
|
|
|
|
+ width: 40upx;
|
|
|
|
|
+ height: 40upx;
|
|
|
|
|
+ display: inline-block;
|
|
|
|
|
+ margin-top: 20upx;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
- &::after {
|
|
|
|
|
|
|
+
|
|
|
|
|
+ .wxService {
|
|
|
|
|
+ padding: 0;
|
|
|
|
|
+ background-color: #ffffff;
|
|
|
border: 0 none;
|
|
border: 0 none;
|
|
|
|
|
+ bottom: 250upx;
|
|
|
|
|
+ line-height: 80upx;
|
|
|
|
|
+
|
|
|
|
|
+ .ibonkefu {
|
|
|
|
|
+ font-size: 46upx;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ &::after {
|
|
|
|
|
+ border: 0 none;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
-}
|
|
|
|
|
-.logo-view {
|
|
|
|
|
- text-align: center;
|
|
|
|
|
- padding: 10upx 0;
|
|
|
|
|
- image {
|
|
|
|
|
- width: 120upx;
|
|
|
|
|
- height: 20upx;
|
|
|
|
|
- opacity: 0.7;
|
|
|
|
|
- }
|
|
|
|
|
- .logo-tip {
|
|
|
|
|
- // padding-top: 4upx;
|
|
|
|
|
- font-size: 18upx;
|
|
|
|
|
- color: #999;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-.address-view {
|
|
|
|
|
- padding: 20upx;
|
|
|
|
|
- font-size: 26upx;
|
|
|
|
|
- // background-color: #ffffff;
|
|
|
|
|
- .address-text {
|
|
|
|
|
- display: inline-block;
|
|
|
|
|
- vertical-align: middle;
|
|
|
|
|
- font-weight: bold;
|
|
|
|
|
|
|
+
|
|
|
|
|
+ .logo-view {
|
|
|
|
|
+ text-align: center;
|
|
|
|
|
+ padding: 10upx 0;
|
|
|
|
|
+
|
|
|
|
|
+ image {
|
|
|
|
|
+ width: 120upx;
|
|
|
|
|
+ height: 20upx;
|
|
|
|
|
+ opacity: 0.7;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .logo-tip {
|
|
|
|
|
+ // padding-top: 4upx;
|
|
|
|
|
+ font-size: 18upx;
|
|
|
|
|
+ color: #999;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
- .ibonfont {
|
|
|
|
|
- margin-right: 10upx;
|
|
|
|
|
- // color: #999;
|
|
|
|
|
- vertical-align: middle;
|
|
|
|
|
|
|
+
|
|
|
|
|
+ .address-view {
|
|
|
|
|
+ padding: 20upx;
|
|
|
|
|
+ font-size: 26upx;
|
|
|
|
|
+
|
|
|
|
|
+ // background-color: #ffffff;
|
|
|
|
|
+ .address-text {
|
|
|
|
|
+ display: inline-block;
|
|
|
|
|
+ vertical-align: middle;
|
|
|
|
|
+ font-weight: bold;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .ibonfont {
|
|
|
|
|
+ margin-right: 10upx;
|
|
|
|
|
+ // color: #999;
|
|
|
|
|
+ vertical-align: middle;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .ibonjinru {
|
|
|
|
|
+ // color: #333;
|
|
|
|
|
+ font-weight: 300;
|
|
|
|
|
+ font-size: 28upx;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
- .ibonjinru {
|
|
|
|
|
- // color: #333;
|
|
|
|
|
- font-weight: 300;
|
|
|
|
|
- font-size: 28upx;
|
|
|
|
|
|
|
+
|
|
|
|
|
+ .banner-ad {
|
|
|
|
|
+ width: 690rpx;
|
|
|
|
|
+ height: 190rpx;
|
|
|
|
|
+ display: block;
|
|
|
|
|
+ margin: 20rpx auto;
|
|
|
}
|
|
}
|
|
|
-}
|
|
|
|
|
</style>
|
|
</style>
|