杨豪
3 years ago
18 changed files with 1807 additions and 1207 deletions
@ -0,0 +1,23 @@ |
|||||||
|
import request from '@/utils/request' |
||||||
|
|
||||||
|
|
||||||
|
export function getIndexData(q){ |
||||||
|
return request.get('index', q, {login: false}) |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
/* |
||||||
|
* 文章列表 |
||||||
|
* */ |
||||||
|
export function getArticle(q) { |
||||||
|
return request.get("/article/list", q, { |
||||||
|
login: false |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/* |
||||||
|
* 文章详情 |
||||||
|
* */ |
||||||
|
export function getArticleDetail(q) { |
||||||
|
return request.get("/article/details/" + q.id); |
||||||
|
} |
@ -0,0 +1,169 @@ |
|||||||
|
<template> |
||||||
|
<view :style="{width: systemInfo.width + 'px', height: systemInfo.height + 'px', backgroundColor: bgcolor, position: 'absolute', left: 0, top: 0, zIndex: 9998, overflow: 'hidden'}"> |
||||||
|
<view v-for="(item,rect_idx) in skeletonRectLists" :key="rect_idx + 'rect'" :class="[loading == 'chiaroscuro' ? 'chiaroscuro' : '']" :style="{width: item.width + 'px', height: item.height + 'px', backgroundColor: 'rgb(194, 207, 214)', position: 'absolute', left: item.left + 'px', top: item.top + 'px'}"></view> |
||||||
|
<view v-for="(item,circle_idx) in skeletonCircleLists" :key="circle_idx + 'circle'" :class="loading == 'chiaroscuro' ? 'chiaroscuro' : ''" :style="{width: item.width + 'px', height: item.height + 'px', backgroundColor: 'rgb(194, 207, 214)', borderRadius: item.width + 'px', position: 'absolute', left: item.left + 'px', top: item.top + 'px'}"></view> |
||||||
|
|
||||||
|
<view class="spinbox" v-if="loading == 'spin'"> |
||||||
|
<view class="spin"></view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
export default { |
||||||
|
name: "skeleton", |
||||||
|
props: { |
||||||
|
bgcolor: { |
||||||
|
type: String, |
||||||
|
value: '#FFF' |
||||||
|
}, |
||||||
|
selector: { |
||||||
|
type: String, |
||||||
|
value: 'skeleton' |
||||||
|
}, |
||||||
|
loading: { |
||||||
|
type: String, |
||||||
|
value: 'spin' |
||||||
|
}, |
||||||
|
show: { |
||||||
|
type: Boolean, |
||||||
|
value: false |
||||||
|
} |
||||||
|
}, |
||||||
|
data() { |
||||||
|
return { |
||||||
|
loadingAni: ['spin', 'chiaroscuro'], |
||||||
|
systemInfo: {}, |
||||||
|
skeletonRectLists: [], |
||||||
|
skeletonCircleLists: [] |
||||||
|
} |
||||||
|
}, |
||||||
|
watch: { |
||||||
|
show() { |
||||||
|
this.attachedAction(); |
||||||
|
this.readyAction(); |
||||||
|
} |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
attachedAction: function(){ |
||||||
|
//默认的首屏宽高,防止内容闪现 |
||||||
|
const systemInfo = uni.getSystemInfoSync(); |
||||||
|
this.systemInfo = { |
||||||
|
width: systemInfo.windowWidth, |
||||||
|
height: systemInfo.windowHeight |
||||||
|
}; |
||||||
|
this.loading = this.loadingAni.includes(this.loading) ? this.loading : 'spin'; |
||||||
|
}, |
||||||
|
readyAction: function(){ |
||||||
|
const that = this; |
||||||
|
//绘制背景 |
||||||
|
uni.createSelectorQuery().selectAll(`.${this.selector}`).boundingClientRect().exec(function(res){ |
||||||
|
that.systemInfo.height = res[0][0].height + res[0][0].top; |
||||||
|
}); |
||||||
|
|
||||||
|
//绘制矩形 |
||||||
|
this.rectHandle(); |
||||||
|
|
||||||
|
//绘制圆形 |
||||||
|
this.radiusHandle(); |
||||||
|
}, |
||||||
|
rectHandle: function(){ |
||||||
|
const that = this; |
||||||
|
|
||||||
|
//绘制不带样式的节点 |
||||||
|
uni.createSelectorQuery().selectAll(`.${this.selector}-rect`).boundingClientRect().exec(function(res){ |
||||||
|
that.skeletonRectLists = res[0]; |
||||||
|
}); |
||||||
|
|
||||||
|
}, |
||||||
|
radiusHandle(){ |
||||||
|
const that = this; |
||||||
|
|
||||||
|
uni.createSelectorQuery().selectAll(`.${this.selector}-radius`).boundingClientRect().exec(function(res){ |
||||||
|
that.skeletonCircleLists = res[0]; |
||||||
|
}); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style> |
||||||
|
.spinbox{ |
||||||
|
position: fixed; |
||||||
|
display: flex; |
||||||
|
justify-content: center; |
||||||
|
align-items: center; |
||||||
|
height: 100%; |
||||||
|
width: 100%; |
||||||
|
z-index: 9999 |
||||||
|
} |
||||||
|
.spin { |
||||||
|
display: inline-block; |
||||||
|
width: 64rpx; |
||||||
|
height: 64rpx; |
||||||
|
} |
||||||
|
.spin:after { |
||||||
|
content: " "; |
||||||
|
display: block; |
||||||
|
width: 46rpx; |
||||||
|
height: 46rpx; |
||||||
|
margin: 1rpx; |
||||||
|
border-radius: 50%; |
||||||
|
border: 5rpx solid #409eff; |
||||||
|
border-color: #409eff transparent #409eff transparent; |
||||||
|
animation: spin 1.2s linear infinite; |
||||||
|
} |
||||||
|
@keyframes spin { |
||||||
|
0% { |
||||||
|
transform: rotate(0deg); |
||||||
|
} |
||||||
|
100% { |
||||||
|
transform: rotate(360deg); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.chiaroscuro{ |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
background: rgb(194, 207, 214); |
||||||
|
animation-duration: 2s; |
||||||
|
animation-name: blink; |
||||||
|
animation-iteration-count: infinite; |
||||||
|
} |
||||||
|
|
||||||
|
@keyframes blink { |
||||||
|
0% { |
||||||
|
opacity: .4; |
||||||
|
} |
||||||
|
50% { |
||||||
|
opacity: 1; |
||||||
|
} |
||||||
|
100% { |
||||||
|
opacity: .4; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@keyframes flush { |
||||||
|
0% { |
||||||
|
left: -100%; |
||||||
|
} |
||||||
|
50% { |
||||||
|
left: 0; |
||||||
|
} |
||||||
|
100% { |
||||||
|
left: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
.shine { |
||||||
|
animation: flush 2s linear infinite; |
||||||
|
position: absolute; |
||||||
|
top: 0; |
||||||
|
bottom: 0; |
||||||
|
width: 100%; |
||||||
|
background: linear-gradient(to left, |
||||||
|
rgba(255, 255, 255, 0) 0%, |
||||||
|
rgba(255, 255, 255, .85) 50%, |
||||||
|
rgba(255, 255, 255, 0) 100% |
||||||
|
) |
||||||
|
} |
||||||
|
</style> |
@ -0,0 +1,759 @@ |
|||||||
|
<template> |
||||||
|
<view class="home-page"> |
||||||
|
<view class="top-bg-box" @tap="toGuidePage"> |
||||||
|
<image src="https://download.cyjyyjy.com/index-top-bg2.png"></image> |
||||||
|
</view> |
||||||
|
|
||||||
|
<!-- <view class="page-top-box"> |
||||||
|
<image src="../../images/home/top-bg.png" class="top-bg"></image> |
||||||
|
<view class="page-title" style="top:{{menuTop}}px;height:{{menuHeight}}px;line-height: {{menuHeight}}px;">禅意云生态</view> |
||||||
|
<view class="top-box-content" style="top: {{CustomBar + menuHeight}}rpx;"> |
||||||
|
<view class="search-box acea-row row-between-wrapper"> |
||||||
|
<view class="localtion-box acea-row row-middle"> |
||||||
|
<image src="../../images/home/localtion.png"></image> |
||||||
|
<text>{{city}}</text> |
||||||
|
</view> |
||||||
|
<view class="search acea-row row-middle"> |
||||||
|
<image src="../../images/home/search.png"></image> |
||||||
|
<text>大家都在搜 APP开发</text> |
||||||
|
</view> |
||||||
|
<image class="message-icon" src="../../images/home/message.png"></image> |
||||||
|
</view> |
||||||
|
<view class="home-menu-box"> |
||||||
|
<view class="menu-list acea-row row-between"> |
||||||
|
<view class="menu-item acea-row row-column row-middle" wx:for="{{menuList}}" wx:key="index"> |
||||||
|
<image src="{{item.icon}}"></image> |
||||||
|
<text>{{item.text}}</text> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> --> |
||||||
|
<!-- 招商会 --> |
||||||
|
<view class="investment-box"> |
||||||
|
<view class="investment-title-box acea-row row-between-wrapper"> |
||||||
|
<view class="acea-row"> |
||||||
|
<text class="fz32">热门活动</text> |
||||||
|
<view class="hot">热</view> |
||||||
|
</view> |
||||||
|
<!-- <view class="more acea-row row-middle"> |
||||||
|
<text>全部</text> |
||||||
|
<image src="/static/images/home/arrow-r.png"></image> |
||||||
|
</view> --> |
||||||
|
</view> |
||||||
|
<view class="investement-list"> |
||||||
|
<scroll-view class="scroll-view_H" scroll-x="true"> |
||||||
|
<view v-for="(item, index) in recommendActivity" :key="index" class="investment-item" @tap="toActiveDetail" :data-id="item.id"> |
||||||
|
<image class="item-bg" :src="item.images" mode="aspectFill"></image> |
||||||
|
<view class="tips-box acea-row row-right"> |
||||||
|
<view v-for="(flag, index2) in spl.spl(item.flag)" :key="index2" :class="'tips-item ' + (index2%2 == 0 ? 'bg2' : '' )" v-if="index2 < 3">{{flag}}</view> |
||||||
|
</view> |
||||||
|
<view class="item-info-box acea-row row-column row-center"> |
||||||
|
<view class="address-box line1"> |
||||||
|
<image src="/static/images/home/localtion.png"></image> |
||||||
|
<text>{{item.address}}</text> |
||||||
|
</view> |
||||||
|
<view class="time-box"> |
||||||
|
<image src="/static/images/home/time.png"></image> |
||||||
|
<text>{{item.activityStartTime}}</text> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</scroll-view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<!-- 尊享福利 --> |
||||||
|
<!-- <view class="welfare-box"> |
||||||
|
<view class="welfare-title">尊享福利</view> |
||||||
|
<view class="welfare-list-box"> |
||||||
|
<scroll-view class="scroll-view_H" scroll-x="true"> |
||||||
|
<view class="welfare-item" wx:for="{{3}}" wx:key="index"> |
||||||
|
<view class="item-box acea-row"> |
||||||
|
<image src="../../images/home/welfare1.png"></image> |
||||||
|
<view class="welfare-info-box acea-row row-column row-between"> |
||||||
|
<view> |
||||||
|
<view class="w-name">保时捷Porsche-Panamera 4S E-Hybrid 行政加长版</view> |
||||||
|
<view class="w-address">武汉光谷保时捷中心</view> |
||||||
|
</view> |
||||||
|
<view> |
||||||
|
<view class="w-price">140万</view> |
||||||
|
<view class="w-oldPrice">市场价约为¥157万</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="buy-btn">立即抢购</view> |
||||||
|
</view> |
||||||
|
<view class="item-box acea-row"> |
||||||
|
<image src="../../images/home/welfare1.png"></image> |
||||||
|
<view class="welfare-info-box acea-row row-column row-between"> |
||||||
|
<view> |
||||||
|
<view class="w-name">保时捷Porsche-Panamera 4S E-Hybrid 行政加长版</view> |
||||||
|
<view class="w-address">武汉光谷保时捷中心</view> |
||||||
|
</view> |
||||||
|
<view> |
||||||
|
<view class="w-price">140万</view> |
||||||
|
<view class="w-oldPrice">市场价约为¥157万</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="buy-btn">立即抢购</view> |
||||||
|
</view> |
||||||
|
data-i </view> |
||||||
|
</scroll-view> |
||||||
|
</view> |
||||||
|
</view> --> |
||||||
|
<!-- 供需模块 --> |
||||||
|
<view class="demandhall-box"> |
||||||
|
<view class="tabs-box acea-row row-around"> |
||||||
|
<view :class="'tab-item ' + (active == 1 ? 'tab-item-a' : '')" data-i="1" @tap="tabClick">最新供应</view> |
||||||
|
<view :class="'tab-item ' + (active == 2 ? 'tab-item-a' : '')" data-i="2" @tap="tabClick">需求广场</view> |
||||||
|
<!-- <view class="tab-item {{active == 3 ? 'tab-item-a' : ''}}" data-i="3" bindtap="tabClick">金牌投资人</view> --> |
||||||
|
</view> |
||||||
|
<view class="list-box" v-if="active == 1"> |
||||||
|
<view v-for="(item, index) in resourcesList" :key="index" class="item"> |
||||||
|
<view class="item-top"> |
||||||
|
<view class="project-name line1">{{item.title}}</view> |
||||||
|
<view class="tag">{{item.cname}}</view> |
||||||
|
<view class="desc line2">{{item.detailedDescription}}</view> |
||||||
|
<view class="buy-btn" @tap="toResourcesDetail" :data-id="item.id">了解详情</view> |
||||||
|
</view> |
||||||
|
<view class="company-box acea-row"> |
||||||
|
<image :src="item.enterpriseDto.enterpriseLogo" class="logo"></image> |
||||||
|
<view class="company-info acea-row row-column row-between"> |
||||||
|
<view class="company-name line1 fz28">{{item.enterpriseDto.enterpriseName}}</view> |
||||||
|
<view class="company-name line2 fz24">{{item.enterpriseDto.enterpriseTitle}}</view> |
||||||
|
<view class="tags-box acea-row"> |
||||||
|
<!-- <view class="tag-item fz20">网站建设</view> --> |
||||||
|
<view class="tag-item fz20 bgG">{{item.cname}}</view> |
||||||
|
<!-- <view class="tag-item fz20 bgO">网站建设</view> --> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="into-btn acea-row row-center-wrapper" @tap="toCompanyDetail" :data-id="item.enterpriseId"> |
||||||
|
<image src="/static/images/home/company-icon.png"></image> |
||||||
|
<text>进入企业</text> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="list-box" v-if="active == 2"> |
||||||
|
<view v-for="(item, index) in demandList" :key="index" class="item" @tap="toNeedDetail" :data-id="item.id"> |
||||||
|
<view class="item-top"> |
||||||
|
<view class="project-name">{{item.title}}</view> |
||||||
|
<view class="desc line2">{{item.detailedDescription}}</view> |
||||||
|
<view class="tags-box tags-box2 acea-row"> |
||||||
|
<view class="tag-item fz20">{{item.enterpriseDto.cname}}</view> |
||||||
|
<!-- <view class="tag-item fz20 bgG">网站建设</view> |
||||||
|
<view class="tag-item fz20 bgO">网站建设</view> --> |
||||||
|
</view> |
||||||
|
<view class="price">{{item.capital}}</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="to-demandhall acea-row row-center row-middle" @tap="toTab2"> |
||||||
|
<text>更多内容去供需大厅</text> |
||||||
|
<image src="/static/images/home/arrow-r.png"></image> |
||||||
|
</view> |
||||||
|
<tabbar :current="currentTabIndex" @click="tabBarClick"></tabbar> |
||||||
|
</view> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script module="spl" lang="wxs" src="../../utils/subutil.wxs"></script> |
||||||
|
|
||||||
|
<script> |
||||||
|
// index.js |
||||||
|
// 获取应用实例 |
||||||
|
const app = getApp(); |
||||||
|
import util from '../../utils/util'; |
||||||
|
var QQMapWX = require("../../utils/qqmap-wx-jssdk.min.js"); |
||||||
|
var qqmapsdk; |
||||||
|
import tabbar from "../../tabbarComponent/tabbar"; |
||||||
|
|
||||||
|
export default { |
||||||
|
data() { |
||||||
|
return { |
||||||
|
menuList: [ |
||||||
|
{ |
||||||
|
icon: "/static/images/home/menu1.png", |
||||||
|
text: 'IT制作' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu2.png", |
||||||
|
text: 'logo设计' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu3.png", |
||||||
|
text: '文案策划' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu4.png", |
||||||
|
text: 'app开发' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu5.png", |
||||||
|
text: '装修服务' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu6.png", |
||||||
|
text: '软件定制' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu7.png", |
||||||
|
text: '法律服务' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu8.png", |
||||||
|
text: '小程序' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu9.png", |
||||||
|
text: '网络营销' |
||||||
|
}, { |
||||||
|
icon: "/static/images/home/menu10.png", |
||||||
|
text: '全部分类' |
||||||
|
}, |
||||||
|
], |
||||||
|
CustomBar: app.globalData.CustomBar, |
||||||
|
menuHeight: app.globalData.menuHeight, |
||||||
|
navHeight: app.globalData.navHeight, |
||||||
|
menuTop: app.globalData.menuTop, |
||||||
|
active: 1, |
||||||
|
recommendActivity: [], |
||||||
|
demandList: [], |
||||||
|
resourcesList: [], |
||||||
|
province: '', |
||||||
|
city: '', |
||||||
|
cagetoryList: "", |
||||||
|
latitude: "", |
||||||
|
longitude: "", |
||||||
|
currentTabIndex: 0 |
||||||
|
}; |
||||||
|
}, |
||||||
|
|
||||||
|
components: { |
||||||
|
tabbar |
||||||
|
}, |
||||||
|
props: {}, |
||||||
|
onShareAppMessage: function(res) { |
||||||
|
return { |
||||||
|
title: '禅易云生态', |
||||||
|
path: '/pages/home/index', |
||||||
|
} |
||||||
|
}, |
||||||
|
onLoad() { |
||||||
|
uni.hideTabBar(); |
||||||
|
// app.globalData.editTabbar(); |
||||||
|
this.pagePath = '/pages/home/index' |
||||||
|
this.getCagetoryList(); |
||||||
|
qqmapsdk = new QQMapWX({ |
||||||
|
key: 'UVEBZ-M3VRS-CO4OH-6F5QZ-X7FB7-SVFOX' //这里自己的key秘钥进行填充 |
||||||
|
|
||||||
|
}); |
||||||
|
this.getLocation(); |
||||||
|
}, |
||||||
|
onPullDownRefresh: function () { |
||||||
|
//调用刷新时将执行的方法 |
||||||
|
this.getCagetoryList(); |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
tabBarClick(index){ |
||||||
|
// console.log('返回tabBar索引:' + index) |
||||||
|
this.currentTabIndex = index |
||||||
|
}, |
||||||
|
toGuidePage() { |
||||||
|
uni.navigateTo({ |
||||||
|
url: '/pages/guide/index' |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
toActiveDetail(e) { |
||||||
|
let id = e.currentTarget.dataset.id; |
||||||
|
uni.navigateTo({ |
||||||
|
url: '/pages/activity/detail/index?id=' + id |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
tabClick(e) { |
||||||
|
this.setData({ |
||||||
|
active: e.currentTarget.dataset.i |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
toTab2() { |
||||||
|
uni.switchTab({ |
||||||
|
url: '/pages/demandHall/index' |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
getCagetoryList() { |
||||||
|
uni.showNavigationBarLoading(); |
||||||
|
app.http('get', 'index').then(res => { |
||||||
|
if (res.data.success) { |
||||||
|
res.data.data.recommendActivity.content.forEach(item => { |
||||||
|
item.activityStartTime = util.getWeek(item.activityStartTime); |
||||||
|
}); |
||||||
|
this.setData({ |
||||||
|
demandList: res.data.data.demandList, |
||||||
|
resourcesList: res.data.data.resourcesDtos, |
||||||
|
cagetoryList: res.data.data.cagetoryDtos, |
||||||
|
recommendActivity: res.data.data.recommendActivity.content |
||||||
|
}); //隐藏导航条加载动画 |
||||||
|
uni.hideNavigationBarLoading(); //停止下拉刷新 |
||||||
|
uni.stopPullDownRefresh(); |
||||||
|
} |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
toResourcesDetail(e) { |
||||||
|
let id = e.currentTarget.dataset.id; |
||||||
|
uni.navigateTo({ |
||||||
|
url: '/pages/demandHall/resourcesDetail/index?id=' + id |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
toCompanyDetail(e) { |
||||||
|
let id = e.currentTarget.dataset.id; |
||||||
|
uni.navigateTo({ |
||||||
|
url: '/pages/demandHall/companyDetail/index?id=' + id |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
toNeedDetail(e) { |
||||||
|
let id = e.currentTarget.dataset.id; |
||||||
|
uni.navigateTo({ |
||||||
|
url: '/pages/demandHall/needsDetail/index?id=' + id |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
getLocation() { |
||||||
|
let vm = this; |
||||||
|
uni.getLocation({ |
||||||
|
type: 'wgs84', |
||||||
|
success: function (res) { |
||||||
|
// console.log(JSON.stringify(res)) |
||||||
|
var latitude = res.latitude; |
||||||
|
var longitude = res.longitude; |
||||||
|
var speed = res.speed; |
||||||
|
var accuracy = res.accuracy; |
||||||
|
vm.getLocal(latitude, longitude); |
||||||
|
}, |
||||||
|
fail: function (res) { |
||||||
|
console.log('fail' + JSON.stringify(res)); |
||||||
|
} |
||||||
|
}); |
||||||
|
}, |
||||||
|
|
||||||
|
// 获取当前地理位置 |
||||||
|
getLocal: function (latitude, longitude) { |
||||||
|
let vm = this; |
||||||
|
qqmapsdk.reverseGeocoder({ |
||||||
|
location: { |
||||||
|
latitude: latitude, |
||||||
|
longitude: longitude |
||||||
|
}, |
||||||
|
success: function (res) { |
||||||
|
// console.log(JSON.stringify(res)); |
||||||
|
let province = res.result.ad_info.province; |
||||||
|
let city = res.result.ad_info.city; |
||||||
|
vm.setData({ |
||||||
|
province: province, |
||||||
|
city: city, |
||||||
|
latitude: latitude, |
||||||
|
longitude: longitude |
||||||
|
}); // console.log(city) |
||||||
|
}, |
||||||
|
fail: function (res) { |
||||||
|
console.log(res); |
||||||
|
}, |
||||||
|
complete: function (res) {// console.log(res); |
||||||
|
} |
||||||
|
}); |
||||||
|
} |
||||||
|
} |
||||||
|
}; |
||||||
|
</script> |
||||||
|
<style> |
||||||
|
|
||||||
|
.home-page{ |
||||||
|
padding-bottom: 190rpx; |
||||||
|
} |
||||||
|
.top-bg-box{ |
||||||
|
width: 750rpx; |
||||||
|
height: 420rpx; |
||||||
|
} |
||||||
|
.top-bg-box image{ |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
} |
||||||
|
.page-top-box{ |
||||||
|
width: 100%; |
||||||
|
height: 598rpx; |
||||||
|
position: relative; |
||||||
|
} |
||||||
|
.page-title{ |
||||||
|
width: 100%; |
||||||
|
color: #fff; |
||||||
|
text-align: center; |
||||||
|
position: relative; |
||||||
|
} |
||||||
|
.top-bg{ |
||||||
|
width: 100%; |
||||||
|
height: 598rpx; |
||||||
|
position: absolute; |
||||||
|
} |
||||||
|
.top-box-content{ |
||||||
|
position: relative; |
||||||
|
} |
||||||
|
.search-box{ |
||||||
|
color: #fff; |
||||||
|
font-size: 32rpx; |
||||||
|
padding: 0 60rpx 0 40rpx; |
||||||
|
} |
||||||
|
.localtion-box image{ |
||||||
|
width: 26rpx; |
||||||
|
height: 31rpx; |
||||||
|
margin-right: 10rpx; |
||||||
|
} |
||||||
|
.search{ |
||||||
|
width: 448rpx; |
||||||
|
height: 68rpx; |
||||||
|
font-size: 28rpx; |
||||||
|
padding: 16rpx 20rpx; |
||||||
|
background: rgba(255, 255, 255, 0.38); |
||||||
|
border-radius: 8rpx; |
||||||
|
} |
||||||
|
.search image{ |
||||||
|
width: 35rpx; |
||||||
|
height: 35rpx; |
||||||
|
margin-right: 16rpx; |
||||||
|
} |
||||||
|
.message-icon{ |
||||||
|
width: 36rpx; |
||||||
|
height: 36rpx; |
||||||
|
} |
||||||
|
.home-menu-box{ |
||||||
|
width: 670rpx; |
||||||
|
height: 286rpx; |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 6rpx 20rpx rgba(151, 69, 34, 0.28); |
||||||
|
border-radius: 12rpx; |
||||||
|
margin: 28rpx auto 0; |
||||||
|
padding: 42rpx; |
||||||
|
} |
||||||
|
.menu-list{ |
||||||
|
color: #1D1D1D; |
||||||
|
font-size: 24rpx; |
||||||
|
} |
||||||
|
.menu-item{ |
||||||
|
width: 20%; |
||||||
|
/* margin-right:16rpx; */ |
||||||
|
margin-bottom: 34rpx; |
||||||
|
} |
||||||
|
.menu-item:nth-child(5n){ |
||||||
|
margin-right: 0; |
||||||
|
} |
||||||
|
.menu-item image{ |
||||||
|
width: 52rpx; |
||||||
|
height: 52rpx; |
||||||
|
} |
||||||
|
|
||||||
|
.investment-box{ |
||||||
|
width: 100%; |
||||||
|
padding: 40rpx 0 0 40rpx; |
||||||
|
} |
||||||
|
.investment-title-box{ |
||||||
|
width: 100%; |
||||||
|
padding-right: 40rpx; |
||||||
|
} |
||||||
|
.fz32{ |
||||||
|
font-size: 32rpx; |
||||||
|
color: #1D1D1D; |
||||||
|
} |
||||||
|
.hot{ |
||||||
|
width: 26rpx; |
||||||
|
height: 26rpx; |
||||||
|
text-align: center; |
||||||
|
line-height: 26rpx; |
||||||
|
background: linear-gradient(147deg, #FB7E4A 0%, #FF5100 100%); |
||||||
|
border-radius: 8rpx 0px 8rpx 0px; |
||||||
|
font-size: 18rpx; |
||||||
|
color: #fff; |
||||||
|
margin-left: 16rpx; |
||||||
|
} |
||||||
|
.more{ |
||||||
|
font-size: 24rpx; |
||||||
|
color: #999999; |
||||||
|
} |
||||||
|
.more image{ |
||||||
|
width: 9rpx; |
||||||
|
height: 16rpx; |
||||||
|
margin-left: 12rpx; |
||||||
|
margin-top: 2rpx; |
||||||
|
} |
||||||
|
.investement-list{ |
||||||
|
width: 100%; |
||||||
|
margin-top: 34rpx; |
||||||
|
} |
||||||
|
.scroll-view_H{ |
||||||
|
white-space: nowrap; |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
.investment-item{ |
||||||
|
display: inline-block; |
||||||
|
width: 324rpx; |
||||||
|
height: 408rpx; |
||||||
|
margin-right:20rpx; |
||||||
|
box-shadow: 0px 6rpx 12rpx rgba(0, 0, 0, 0.16); |
||||||
|
position: relative; |
||||||
|
} |
||||||
|
.investment-item .item-bg{ |
||||||
|
width: 324rpx; |
||||||
|
height: 408rpx; |
||||||
|
position: absolute; |
||||||
|
border-radius: 8rpx; |
||||||
|
} |
||||||
|
.tips-box{ |
||||||
|
position: relative; |
||||||
|
top: 20rpx; |
||||||
|
} |
||||||
|
.tips-item{ |
||||||
|
padding: 6rpx 10rpx; |
||||||
|
line-height: 28rpx; |
||||||
|
font-size: 20rpx; |
||||||
|
color: #fff; |
||||||
|
background: rgba(255, 81, 0, 0.63); |
||||||
|
border-radius: 8rpx; |
||||||
|
margin-right: 14rpx; |
||||||
|
} |
||||||
|
.bg2{ |
||||||
|
background: rgba(255, 170, 0, 0.63); |
||||||
|
} |
||||||
|
.item-info-box{ |
||||||
|
width: 300rpx; |
||||||
|
height: 102rpx; |
||||||
|
background: rgba(255, 255, 255, 0.8); |
||||||
|
box-shadow: 0px 6rpx 12rpx rgba(0, 0, 0, 0.2); |
||||||
|
border-radius: 8rpx; |
||||||
|
position: absolute; |
||||||
|
bottom: 18rpx; |
||||||
|
left: 50%; |
||||||
|
margin-left: -150rpx; |
||||||
|
font-size: 22rpx; |
||||||
|
color: #404040; |
||||||
|
} |
||||||
|
.item-info-box image{ |
||||||
|
width: 14rpx; |
||||||
|
height: 17rpx; |
||||||
|
margin: 0 12rpx 0 12rpx; |
||||||
|
} |
||||||
|
|
||||||
|
.welfare-box{ |
||||||
|
width: 100%; |
||||||
|
padding-left: 40rpx; |
||||||
|
margin-top: 52rpx; |
||||||
|
} |
||||||
|
.welfare-title{ |
||||||
|
font-size: 32rpx; |
||||||
|
color: #1D1D1D; |
||||||
|
margin-bottom: 38rpx; |
||||||
|
} |
||||||
|
.welfare-list-box{ |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
.welfare-item{ |
||||||
|
display: inline-block; |
||||||
|
margin-right: 6rpx; |
||||||
|
padding: 12rpx; |
||||||
|
} |
||||||
|
.item-box{ |
||||||
|
width: 650rpx; |
||||||
|
height: 248rpx; |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 0rpx 12rpx rgba(0, 0, 0, 0.16); |
||||||
|
padding: 22rpx 16rpx; |
||||||
|
border-radius: 12rpx; |
||||||
|
margin-bottom: 20rpx; |
||||||
|
position: relative; |
||||||
|
} |
||||||
|
.buy-btn{ |
||||||
|
width: 144rpx; |
||||||
|
height: 52rpx; |
||||||
|
text-align: center; |
||||||
|
line-height: 52rpx; |
||||||
|
background: linear-gradient(315deg, #FB966C 0%, #FFC2AA 100%); |
||||||
|
border-radius: 12rpx; |
||||||
|
color: #fff; |
||||||
|
font-size: 24rpx; |
||||||
|
position: absolute; |
||||||
|
bottom: 30rpx; |
||||||
|
right: 30rpx; |
||||||
|
} |
||||||
|
.item-box image{ |
||||||
|
width: 198rpx; |
||||||
|
height: 204rpx; |
||||||
|
margin-right: 12rpx; |
||||||
|
} |
||||||
|
.welfare-info-box{ |
||||||
|
width: 394rpx; |
||||||
|
} |
||||||
|
.w-name{ |
||||||
|
width: 390rpx; |
||||||
|
font-size: 28rpx; |
||||||
|
line-height: 40rpx; |
||||||
|
color: #1D1D1D; |
||||||
|
overflow: hidden; |
||||||
|
text-overflow: ellipsis; |
||||||
|
display: -webkit-box; |
||||||
|
-webkit-line-clamp: 3; |
||||||
|
-webkit-box-orient: vertical; |
||||||
|
} |
||||||
|
.w-address{ |
||||||
|
font-size: 24rpx; |
||||||
|
line-height: 34rpx; |
||||||
|
color: #707070; |
||||||
|
margin: 8rpx 0 14rpx; |
||||||
|
} |
||||||
|
.w-price{ |
||||||
|
font-size: 28rpx; |
||||||
|
font-weight: bold; |
||||||
|
line-height: 40rpx; |
||||||
|
color: #FF7942; |
||||||
|
} |
||||||
|
.w-oldPrice{ |
||||||
|
font-size: 20rpx; |
||||||
|
color: #BCBCBC; |
||||||
|
text-decoration: line-through; |
||||||
|
} |
||||||
|
|
||||||
|
.demandhall-box{ |
||||||
|
width: 100%; |
||||||
|
padding: 40rpx; |
||||||
|
} |
||||||
|
.tabs-box{ |
||||||
|
padding-left: 30rpx; |
||||||
|
padding-right: 12rpx; |
||||||
|
} |
||||||
|
.tab-item{ |
||||||
|
font-size: 28rpx; |
||||||
|
color: #9C9C9C; |
||||||
|
padding-bottom: 8rpx; |
||||||
|
} |
||||||
|
.tab-item-a{ |
||||||
|
color: #1D1D1D; |
||||||
|
border-bottom: 4rpx solid #FF7942; |
||||||
|
} |
||||||
|
.list-box{ |
||||||
|
width: 100%; |
||||||
|
margin-top: 36rpx; |
||||||
|
} |
||||||
|
.item{ |
||||||
|
width: 670rpx; |
||||||
|
background: #FFFFFF; |
||||||
|
box-shadow: 0px 6rpx 12rpx rgba(190, 190, 190, 0.3); |
||||||
|
border-radius: 12rpx; |
||||||
|
padding: 28rpx 20rpx 18rpx; |
||||||
|
margin-bottom: 32rpx; |
||||||
|
} |
||||||
|
.item-top{ |
||||||
|
padding-bottom: 24rpx; |
||||||
|
position: relative; |
||||||
|
} |
||||||
|
.item-top .buy-btn{ |
||||||
|
right: 0; |
||||||
|
} |
||||||
|
.project-name{ |
||||||
|
width: 400rpx; |
||||||
|
font-size: 32rpx; |
||||||
|
font-weight: 500; |
||||||
|
line-height: 58rpx; |
||||||
|
color: #1D1D1D; |
||||||
|
} |
||||||
|
.tags-box2{ |
||||||
|
margin-top: 12rpx; |
||||||
|
} |
||||||
|
.price{ |
||||||
|
color: #FF5100; |
||||||
|
font-size: 28rpx; |
||||||
|
position: absolute; |
||||||
|
top: 0; |
||||||
|
right: 0rpx; |
||||||
|
} |
||||||
|
.tag{ |
||||||
|
color: #74BDF7; |
||||||
|
font-size: 20rpx; |
||||||
|
line-height: 28rpx; |
||||||
|
margin: 12rpx 0 20rpx; |
||||||
|
} |
||||||
|
.desc{ |
||||||
|
font-size: 24rpx; |
||||||
|
line-height: 34rpx; |
||||||
|
color: #666666; |
||||||
|
margin-top: 8rpx; |
||||||
|
} |
||||||
|
.company-box{ |
||||||
|
padding-top: 12rpx; |
||||||
|
position: relative; |
||||||
|
border-top: 2rpx solid #ECECEC; |
||||||
|
} |
||||||
|
.company-box image{ |
||||||
|
width: 128rpx; |
||||||
|
height: 128rpx; |
||||||
|
border-radius: 8rpx; |
||||||
|
} |
||||||
|
.company-info{ |
||||||
|
width: calc(100% - 298rpx); |
||||||
|
margin-left: 12rpx; |
||||||
|
} |
||||||
|
.fz28{ |
||||||
|
font-size: 28rpx; |
||||||
|
line-height: 40rpx; |
||||||
|
color: #1D1D1D; |
||||||
|
} |
||||||
|
.fz24{ |
||||||
|
font-size: 24rpx; |
||||||
|
line-height: 34rpx; |
||||||
|
} |
||||||
|
.fz20{ |
||||||
|
font-size: 20rpx; |
||||||
|
line-height: 28rpx; |
||||||
|
} |
||||||
|
.item-top .buy-btn{ |
||||||
|
top: 0; |
||||||
|
} |
||||||
|
.into-btn{ |
||||||
|
font-size: 20rpx; |
||||||
|
color: #FF5100; |
||||||
|
width: 144rpx; |
||||||
|
height: 40rpx; |
||||||
|
border: 1rpx solid #FF5100; |
||||||
|
opacity: 1; |
||||||
|
border-radius: 20rpx; |
||||||
|
position: absolute; |
||||||
|
top: 18rpx; |
||||||
|
right: 0rpx; |
||||||
|
} |
||||||
|
.into-btn image{ |
||||||
|
width: 21rpx; |
||||||
|
height: 19rpx; |
||||||
|
margin-right: 6rpx; |
||||||
|
} |
||||||
|
.tag-item{ |
||||||
|
width: 112rpx; |
||||||
|
height: 36rpx; |
||||||
|
line-height: 34rpx; |
||||||
|
text-align: center; |
||||||
|
border: 1rpx solid #FFAA00; |
||||||
|
color: #FFAA00; |
||||||
|
border-radius: 4rpx; |
||||||
|
margin-right: 8rpx; |
||||||
|
} |
||||||
|
.bgG{ |
||||||
|
border: 1rpx solid #3A9EFA; |
||||||
|
color: #3A9EFA; |
||||||
|
} |
||||||
|
.bgO{ |
||||||
|
border: 1rpx solid #FC9367; |
||||||
|
color: #FC9367; |
||||||
|
} |
||||||
|
.to-demandhall{ |
||||||
|
font-size: 28rpx; |
||||||
|
color: #A7A7A7; |
||||||
|
margin-bottom: 28rpx; |
||||||
|
} |
||||||
|
.to-demandhall image{ |
||||||
|
width: 13rpx; |
||||||
|
height: 23rpx; |
||||||
|
margin-left: 15rpx; |
||||||
|
} |
||||||
|
|
||||||
|
</style> |
Before Width: | Height: | Size: 377 KiB |
Before Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 35 KiB |
Loading…
Reference in new issue