特易招,招聘小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

159 lines
3.1 KiB

6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
  1. <template>
  2. <view class="page">
  3. <view class="banner">
  4. <uv-swiper
  5. :list="banner"
  6. indicator
  7. height="620rpx"
  8. keyName="image"></uv-swiper>
  9. <!-- indicatorStyle="bottom: 100rpx;" -->
  10. <view class="top">
  11. <view class="search">
  12. <uv-search
  13. placeholder="请输入岗位/公司名称"
  14. :showAction="false"
  15. search-icon-size="40rpx"
  16. @search="search"
  17. v-model="keyword"></uv-search>
  18. </view>
  19. </view>
  20. </view>
  21. <!-- 工人看到的 -->
  22. <view class="content"
  23. v-if="!role">
  24. <view class="grid">
  25. <uv-grid :border="false"
  26. :col="5">
  27. <!-- @click="$utils.navigateTo('/pages_order/work/workList?id=' + item.id)" -->
  28. <uv-grid-item
  29. v-for="(item,index) in jobTypeList"
  30. :key="index">
  31. <image class="grid-icon" :src="item.image" mode="aspectFill"></image>
  32. <text class="grid-text">{{item.name}}</text>
  33. </uv-grid-item>
  34. </uv-grid>
  35. </view>
  36. </view>
  37. <!-- 筛选器 -->
  38. <screenWork @clickItem="clickItem"/>
  39. <!-- 老板看到的 -->
  40. <userList ref="workList" v-if="role"/>
  41. <!-- 工人看到的 -->
  42. <workList ref="workList" v-else/>
  43. <PrivacyAgreementPoup/>
  44. <tabber select="0"/>
  45. </view>
  46. </template>
  47. <script>
  48. import PrivacyAgreementPoup from '@/components/config/PrivacyAgreementPoup.vue'
  49. import workList from '@/components/list/workList/index.vue'
  50. import userList from '@/components/list/userList/index.vue'
  51. import tabber from '@/components/base/tabbar.vue'
  52. import screenWork from '@/components/screen/screenWork.vue'
  53. import {
  54. mapState,
  55. } from 'vuex'
  56. export default {
  57. components : {
  58. PrivacyAgreementPoup,
  59. workList,
  60. tabber,
  61. screenWork,
  62. userList
  63. },
  64. computed: {
  65. ...mapState([
  66. 'userInfo',
  67. 'role',
  68. 'banner',
  69. 'jobTypeList'
  70. ]),
  71. },
  72. data() {
  73. return {
  74. productList: [],
  75. keyword : '',
  76. }
  77. },
  78. // onPullDownRefresh(){
  79. // this.$refs.videoList.queryVideoList()
  80. // this.queryBannerList()
  81. // },
  82. onShow() {
  83. this.$refs.workList.getData()
  84. this.$store.commit('getBanner')
  85. },
  86. //滚动到屏幕底部
  87. onReachBottom() {
  88. this.$refs.workList.loadMoreData()
  89. },
  90. methods: {
  91. clickItem(){
  92. },
  93. }
  94. }
  95. </script>
  96. <style scoped lang="scss">
  97. .page{
  98. .banner{
  99. position: relative;
  100. background-color: $uni-color;
  101. .top{
  102. position: absolute;
  103. top: 190rpx;
  104. left:00rpx;
  105. padding-top: 30rpx;
  106. display: flex;
  107. width: 100%;
  108. flex-direction: column;
  109. align-items: center;
  110. .search{
  111. width: 700rpx;
  112. /deep/ .uv-search__content__icon{
  113. padding: 10rpx 0;
  114. }
  115. }
  116. .title{
  117. image{
  118. width: 600rpx;
  119. height: 300rpx;
  120. }
  121. }
  122. }
  123. }
  124. .content{
  125. position: relative;
  126. margin-top: -60rpx;
  127. .grid{
  128. padding-bottom: 30rpx;
  129. background-color: #fff;
  130. // border-radius: 60rpx;
  131. border-top-left-radius: 60rpx;
  132. border-top-right-radius: 60rpx;
  133. // box-shadow: 0 -10rpx 10rpx 10rpx #00000013;
  134. .grid-icon{
  135. width: 80rpx;
  136. height: 80rpx;
  137. margin-bottom: 10rpx;
  138. margin-top: 30rpx;
  139. }
  140. .grid-text{
  141. font-size: 24rpx;
  142. font-weight: 900;
  143. }
  144. }
  145. }
  146. }
  147. </style>