detail.js.map 32.6 KB
{"version":3,"sources":["uni-app:///main.js",null,"webpack:///D:/vue/kaoshi3-fangweishangcheng/pages/index/detail.vue?5149","webpack:///D:/vue/kaoshi3-fangweishangcheng/pages/index/detail.vue?8471","webpack:///D:/vue/kaoshi3-fangweishangcheng/pages/index/detail.vue?b779","uni-app:///pages/index/detail.vue","webpack:///D:/vue/kaoshi3-fangweishangcheng/pages/index/detail.vue?b87b","webpack:///D:/vue/kaoshi3-fangweishangcheng/pages/index/detail.vue?cb05"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":"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","file":"pages/index/detail.js","sourcesContent":["import 'uni-pages';wx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/index/detail.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./detail.vue?vue&type=template&id=5166ee27&\"\nvar renderjs\nimport script from \"./detail.vue?vue&type=script&lang=js&\"\nexport * from \"./detail.vue?vue&type=script&lang=js&\"\nimport style0 from \"./detail.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null,\n  false,\n  components,\n  renderjs\n)\n\ncomponent.options.__file = \"pages/index/detail.vue\"\nexport default component.exports","export * from \"-!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--16-0!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./detail.vue?vue&type=template&id=5166ee27&\"","var components\ntry {\n  components = {\n    uDivider: function() {\n      return import(\n        /* webpackChunkName: \"node-modules/uview-ui/components/u-divider/u-divider\" */ \"uview-ui/components/u-divider/u-divider.vue\"\n      )\n    },\n    uIcon: function() {\n      return import(\n        /* webpackChunkName: \"node-modules/uview-ui/components/u-icon/u-icon\" */ \"uview-ui/components/u-icon/u-icon.vue\"\n      )\n    },\n    uSearch: function() {\n      return import(\n        /* webpackChunkName: \"node-modules/uview-ui/components/u-search/u-search\" */ \"uview-ui/components/u-search/u-search.vue\"\n      )\n    },\n    uPopup: function() {\n      return import(\n        /* webpackChunkName: \"node-modules/uview-ui/components/u-popup/u-popup\" */ \"uview-ui/components/u-popup/u-popup.vue\"\n      )\n    },\n    \"u-Textarea\": function() {\n      return import(\n        /* webpackChunkName: \"node-modules/uview-ui/components/u--textarea/u--textarea\" */ \"uview-ui/components/u--textarea/u--textarea.vue\"\n      )\n    }\n  }\n} catch (e) {\n  if (\n    e.message.indexOf(\"Cannot find module\") !== -1 &&\n    e.message.indexOf(\".vue\") !== -1\n  ) {\n    console.error(e.message)\n    console.error(\"1. 排查组件名称拼写是否正确\")\n    console.error(\n      \"2. 排查组件是否符合 easycom 规范,文档:https://uniapp.dcloud.net.cn/collocation/pages?id=easycom\"\n    )\n    console.error(\n      \"3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件\"\n    )\n  } else {\n    throw e\n  }\n}\nvar render = function() {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  var l1 = _vm.__map(_vm.pingList, function(item, index) {\n    var $orig = _vm.__get_orig(item)\n\n    var g0 = item.create_time.slice(5, 16)\n    var l0 = item.child.length ? item.child.slice(0, 2) : null\n    return {\n      $orig: $orig,\n      g0: g0,\n      l0: l0\n    }\n  })\n\n  if (!_vm._isMounted) {\n    _vm.e0 = function($event) {\n      _vm.rightCate = true\n    }\n\n    _vm.e1 = function($event) {\n      _vm.inputState = true\n    }\n\n    _vm.e2 = function($event) {\n      _vm.inputState = true\n    }\n\n    _vm.e3 = function($event) {\n      _vm.huiState = false\n    }\n\n    _vm.e4 = function($event) {\n      _vm.inputState = false\n    }\n  }\n\n  _vm.$mp.data = Object.assign(\n    {},\n    {\n      $root: {\n        l1: l1\n      }\n    }\n  )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./detail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--12-1!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./detail.vue?vue&type=script&lang=js&\"","<template>\r\n  <view>\r\n    <view class=\"topInfoBox flexA\">\r\n      <view class=\"flexA\">\r\n        <image :src=\"itemlist.user.avatar\" mode=\"scaleToFill\" />\r\n        <view class=\"timeText\">\r\n          <view>{{ itemlist.user.user_name }}</view>\r\n          <view>{{ itemlist.update_time }}</view>\r\n        </view>\r\n      </view>\r\n    </view>\r\n\r\n    <swiper :autoplay=\"true\" :interval=\"3000\" style=\"height: 420rpx\" class=\"swiper\" @change=\"changeSwiperHandler\">\r\n      <swiper-item v-for=\"item in bannerList\" :key=\"item\" class=\"flexC\" @click=\"prevViewImageHandler(item)\">\r\n        <video v-if=\"item.type == 'video'\" style=\"width: 100%; height: 100%\" :src=\"item.url\" />\r\n        <image v-if=\"item.type == 'img'\" :src=\"item.url\" mode=\"heightFix\" />\r\n      </swiper-item>\r\n    </swiper>\r\n\r\n    <view slot=\"indicator\" class=\"indicator\">\r\n      <view\r\n        class=\"indicator__dot\"\r\n        v-for=\"(item, index) in bannerList\"\r\n        :key=\"index\"\r\n        :class=\"[index === current && 'indicator__dot--active']\"\r\n      ></view>\r\n    </view>\r\n\r\n    <!-- 内容 -->\r\n    <view class=\"mainBox\">\r\n      <view class=\"titleText\">{{ itemlist.title }}</view>\r\n      <view class=\"centerText\">{{ itemlist.content }}</view>\r\n    </view>\r\n\r\n    <!-- 评论 -->\r\n    <view class=\"mainBox2\">\r\n      <u-divider></u-divider>\r\n      <view class=\"flexJ topBox\" style=\"margin-top: 32rpx\">\r\n        <view class=\"pingNumText\">共{{ total || '0' }}条评论</view>\r\n        <image style=\"width: 32rpx; height: 32rpx\" src=\"/static/toggle.png\" mode=\"scaleToFill\" @click=\"rightCate = true\" />\r\n        <view class=\"xia\" v-if=\"rightCate\">\r\n          <view class=\"flexC\" @click=\"sortHandler(0)\">时间排序</view>\r\n          <view class=\"flexC\" @click=\"sortHandler(1)\">热度排序</view>\r\n        </view>\r\n      </view>\r\n\r\n      <!-- 评论数据 -->\r\n      <view class=\"pingBox\" v-for=\"(item, index) in pingList\" :key=\"item.id\">\r\n        <!-- 头像和点赞 -->\r\n        <view class=\"pTopBox flexJ\">\r\n          <view class=\"avatarBox flexA\">\r\n            <image :src=\"item.user_avatar\" mode=\"scaleToFill\" />\r\n            <view>{{ item.username }}</view>\r\n          </view>\r\n          <view class=\"zanBox flexA\">\r\n            <image\r\n              @click=\"getCommentFavorite(item.is_favorite, index, item.id)\"\r\n              :src=\"item.is_favorite == 0 ? '/static/zan1.png' : '/static/zan11.png'\"\r\n              mode=\"scaleToFill\"\r\n            />\r\n            <view>{{ item.favorite_num }}</view>\r\n          </view>\r\n        </view>\r\n        <!-- 内容 -->\r\n        <view class=\"contentBox\">{{ item.comment }}</view>\r\n        <!-- 回复和时间 -->\r\n        <view class=\"timeBox flexA\">\r\n          <view>{{ item.create_time.slice(5, 16) }}</view>\r\n          <view class=\"flexC\" @click=\"huiHandler(item.id, item.username, index)\">回复</view>\r\n        </view>\r\n\r\n        <!-- 回复评论 -->\r\n        <view class=\"hPBox\" v-if=\"item.child.length\">\r\n          <view v-for=\"it in item.child.slice(0, 2)\" :key=\"item.id\">\r\n            <view class=\"huifu chao\">\r\n              <text class=\"nameText\">{{ it.username }}</text>\r\n              <text class=\"huifuText\">回复</text>\r\n              <text class=\"nameText\">{{ it.tousername }}:</text>\r\n              <text>{{ it.comment }}</text>\r\n              <!-- <text >哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈</text> -->\r\n            </view>\r\n            <!-- <view class=\"huifuText\">展开</view> -->\r\n          </view>\r\n          <view v-if=\"item.child_num >= 2\" class=\"flexA huifuText1Box\" @click=\"toPingDetail(item.id)\">\r\n            <view class=\"huifuText1\">查看全部{{ item.child_num }}条回复</view>\r\n            <image style=\"width: 16rpx; height: 24rpx\" src=\"/static/blueRIght.png\" mode=\"scaleToFill\" />\r\n          </view>\r\n        </view>\r\n      </view>\r\n    </view>\r\n\r\n    <!-- 底部点赞评论收藏 -->\r\n    <view class=\"bottomBtnBox flexA\" v-if=\"!huiState\">\r\n      <view class=\"favoriteBox flexA\" @click=\"inputState = true\">\r\n        <image class=\"xImg\" src=\"/static/xie.png\" mode=\"scaleToFill\" />\r\n        <view>我来说两句...</view>\r\n      </view>\r\n\r\n      <!-- 点赞 -->\r\n      <view class=\"likeBox flexA\" style=\"margin-right: 40rpx\">\r\n        <image\r\n          :src=\"userFavorite_zan == '1' ? '/static/zan11.png' : '/static/zan1.png'\"\r\n          mode=\"scaleToFill\"\r\n          @click=\"favoriteHandler(1)\"\r\n        />\r\n        <view>{{ zanNum }}</view>\r\n      </view>\r\n\r\n      <!-- 评论 -->\r\n      <view class=\"likeBox flexA\" style=\"margin-right: 40rpx\" @click=\"inputState = true\">\r\n        <image src=\"/static/icon1.png\" mode=\"scaleToFill\" />\r\n        <view>{{ total }}</view>\r\n      </view>\r\n\r\n      <!-- 收藏 -->\r\n      <view class=\"likeBox flexA\">\r\n        <image v-if=\"userFavorite_cang == '0'\" src=\"/static/icon2.png\" mode=\"scaleToFill\" @click=\"favoriteHandler(3)\" />\r\n        <u-icon v-else name=\"star-fill\" color=\"#6e15ff\" size=\"22\" @click=\"favoriteHandler(3)\"></u-icon>\r\n        <view>{{ cangNum }}</view>\r\n      </view>\r\n    </view>\r\n\r\n    <!-- 回复 -->\r\n    <view class=\"maskBox flexC\" v-if=\"huiState\" @click=\"huiState = false\">\r\n      <view class=\"huiBox1\">\r\n        <view class=\"huiBox flexA\" @click.stop=\"abb\">\r\n          <view class=\"zIndex\">回复{{ huiName }}:</view>\r\n          <view style=\"margin-left: -84rpx\">\r\n            <u-search\r\n              searchIconColor=\"#F7F8FA\"\r\n              placeholder=\" \"\r\n              bgColor=\"#F7F8FA\"\r\n              :clearabled=\"false\"\r\n              @search=\"huifuHandler\"\r\n              :showAction=\"false\"\r\n              v-model=\"huiValue\"\r\n            ></u-search>\r\n          </view>\r\n          <!-- <input type=\"text\" v-model=\"huiValue\" @input=\"huifuHandler\" /> -->\r\n        </view>\r\n      </view>\r\n    </view>\r\n\r\n    <!-- 底部白盒子 -->\r\n    <view class=\"fffBox\"></view>\r\n\r\n    <u-popup :show=\"inputState\">\r\n      <view class=\"inputBox\">\r\n        <view class=\"flexJ selectBox\">\r\n          <view @click=\"inputState = false\">取消</view>\r\n          <view @click=\"pingZHandler\">发送</view>\r\n        </view>\r\n        <u--textarea\r\n          v-model=\"value2\"\r\n          maxlength=\"300\"\r\n          :showConfirmBar=\"false\"\r\n          focus\r\n          adjustPosition\r\n          placeholder=\"请输入内容\"\r\n          count\r\n        ></u--textarea>\r\n      </view>\r\n    </u-popup>\r\n    <view style=\"height: 120rpx\"></view>\r\n  </view>\r\n</template>\r\n<script>\r\nimport { getDetail, getCommentList, getFavorite, getCommentFavorite, getComment } from '@/api'\r\nexport default {\r\n  data() {\r\n    return {\r\n      value2: '',\r\n      inputState: false,\r\n      huiState: false,\r\n      huiValue: '',\r\n      huiName: '',\r\n      itemId: '',\r\n      itemlist: {},\r\n      // 当前指示器\r\n      current: 0,\r\n      // 轮播图数据\r\n      bannerList: [],\r\n      // 右侧筛选状态\r\n      rightCate: false,\r\n      order: 1,\r\n      // 用户是否点赞\r\n      userFavorite_zan: 0,\r\n      // 点赞数量\r\n      zanNum: 0,\r\n      // 用户是否收藏\r\n      userFavorite_cang: 0,\r\n      // 收藏数量\r\n      cangNum: 0,\r\n      // 评论数据\r\n      pingList: [],\r\n      // 一共多少条评论\r\n      total: 0,\r\n      // 最后一页\r\n      lastPage: 0,\r\n      // 当前页\r\n      curPage: 1,\r\n      // 回复人员id\r\n      pid: 0,\r\n      // 回复评论索引\r\n      huiIdx: ''\r\n    }\r\n  },\r\n  onLoad(options) {\r\n    // console.log(options.itemId)\r\n    this.itemId = options.itemId\r\n    this.getDetail()\r\n    this.getCommentList()\r\n    // this.userInfo = JSON.parse(options.userInfo)\r\n  },\r\n  onReachBottom() {\r\n    if (this.curPage == this.lastPage) return uni.showToast({ title: '没有更多回复了~', icon: 'none' })\r\n    this.curPage += 1\r\n    this.getCommentList()\r\n  },\r\n  methods: {\r\n    // 切换轮播图\r\n    changeSwiperHandler(e) {\r\n      // console.log(e)\r\n      this.current = e.detail.current\r\n    },\r\n\r\n    // 获取详情数据\r\n    async getDetail() {\r\n      const res = await getDetail({ id: this.itemId })\r\n      this.itemlist = res.data\r\n      const list = JSON.parse(this.itemlist.file)\r\n      if (list.video) {\r\n        this.bannerList.push({ url: JSON.parse(this.itemlist.file).video, type: 'video' })\r\n      }\r\n      list.imgList.forEach(item => {\r\n        this.bannerList.push({ url: item, type: 'img' })\r\n      })\r\n      this.userFavorite_zan = res.data.userFavorite_zan\r\n      this.userFavorite_cang = res.data.userFavorite_cang\r\n      this.zanNum = res.data.favorite.like_num\r\n      this.cangNum = res.data.favorite.collection_num\r\n    },\r\n\r\n    // 预览轮播图\r\n    prevViewImageHandler(item) {\r\n      console.log(item)\r\n      const list3 = this.bannerList.filter(item => item.type == 'img').map(item => item.url)\r\n      uni.previewImage({\r\n        urls: list3,\r\n        longPressActions: {\r\n          itemList: ['发送给朋友', '保存图片', '收藏'],\r\n          success: function (data) {\r\n            console.log('选中了第' + (data.tapIndex + 1) + '个按钮,第' + (data.index + 1) + '张图片')\r\n          },\r\n          fail: function (err) {\r\n            console.log(err.errMsg)\r\n          },\r\n        },\r\n      })\r\n    },\r\n\r\n    // 筛选排序\r\n    sortHandler(type) {\r\n      this.rightCate = !this.rightCate\r\n      this.order = type\r\n      this.curPage = 1\r\n      this.pingList = []\r\n      this.getCommentList()\r\n    },\r\n\r\n    // 获取评论列表\r\n    async getCommentList() {\r\n      const res = await getCommentList({\r\n        id: this.itemId, //\tinteger\t是\t论坛id\r\n        order: this.order, //\tinteger\t是\t排序 0:时间,1:热度\r\n        page: this.curPage || 1, //\tinteger\t是\t页码\r\n        rows: 6, //\tinteger\t是\t条数\r\n      })\r\n\r\n      console.log(res, '1122')\r\n      this.lastPage = res.data.last_page\r\n      this.total = res.data.total\r\n      // this.pingList = []\r\n      this.pingList = this.pingList.concat(res.data.data)\r\n    },\r\n\r\n    // 详情点赞收藏\r\n    async getFavorite(type, set) {\r\n      const res = await getFavorite({\r\n        id: this.itemId, //\tinteger\t是\t论坛ID\r\n        type: type, //\tinteger\t是\t1:点赞,3:收藏\r\n        set: set, //\tinteger\t是\t0:取消,1:确认\r\n      })\r\n    },\r\n\r\n    // 点赞收藏操作\r\n    favoriteHandler(type) {\r\n      // 点赞\r\n      if (type == 1) {\r\n        // 确认点赞\r\n        if (this.userFavorite_zan == 1) {\r\n          this.userFavorite_zan = 0\r\n          this.getFavorite(1, 0)\r\n          this.zanNum = this.zanNum - 1\r\n        } else {\r\n          // 取消点赞\r\n          this.userFavorite_zan = 1\r\n          this.getFavorite(1, 1)\r\n          this.zanNum = this.zanNum + 1\r\n        }\r\n      }\r\n      // 收藏\r\n      if (type == 3) {\r\n        if (this.userFavorite_cang == 1) {\r\n          this.userFavorite_cang = 0\r\n          this.getFavorite(3, 0)\r\n          this.cangNum = this.cangNum - 1\r\n        } else {\r\n          this.userFavorite_cang = 1\r\n          this.getFavorite(3, 1)\r\n          this.cangNum = this.cangNum + 1\r\n        }\r\n      }\r\n      // this.getDetail()\r\n    },\r\n\r\n    // 评论点赞操作\r\n    async getCommentFavorite(isF, index, id) {\r\n      // console.log(isF, index)\r\n      try {\r\n        const res = await getCommentFavorite({\r\n          id: id, //\tinteger\t是\t评论主键ID\r\n          set: isF == 1 ? 0 : 1, //\tinteger\t是\t0:取消,1:确认\r\n        })\r\n        if (isF == 1) {\r\n          this.pingList[index].favorite_num -= 1\r\n        } else {\r\n          this.pingList[index].favorite_num += 1\r\n        }\r\n        this.pingList[index].is_favorite = this.pingList[index].is_favorite == 1 ? 0 : 1\r\n        console.log(res)\r\n      } catch (error) {\r\n        console.log(error)\r\n      }\r\n    },\r\n\r\n    // 回复\r\n    huifuHandler() {\r\n      this.huiState = false\r\n      uni.showToast({ title: '回复成功~' })\r\n      this.huiValue = ''\r\n      this.curPage = 1\r\n      // this.pingList = []\r\n      // this.getCommentList()\r\n      this.pingList[this.huiIdx].child_num += 1\r\n      this.getComment(this.huiValue, this.pid)\r\n    },\r\n\r\n    pingZHandler() {\r\n      console.log(this.value2)\r\n      this.getComment(this.value2, 0)\r\n      this.inputState = false\r\n      uni.showToast({ title: '评论成功~' })\r\n      this.curPage = 1\r\n      // this.pingList = []\r\n      // this.getCommentList()\r\n    },\r\n    // 防止穿透点击事件\r\n    abb() {},\r\n\r\n    huiHandler(pid, name,index) {\r\n      this.huiIdx = index\r\n      // console.log(index)\r\n      this.pid = pid\r\n      this.huiName = name\r\n      this.huiState = true\r\n    },\r\n\r\n    // 评论\r\n    async getComment(value, pid) {\r\n      try {\r\n        const res = await getComment({\r\n          id: this.itemId, //\tinteger\t是\t论坛ID\r\n          pid: pid, //\tinteger\t是\t回复id,首次评论传0\r\n          comment: value, //\tstring\t是\t评论内容\r\n        })\r\n\r\n        this.getCommentList()\r\n      } catch (error) {\r\n        console.log(error)\r\n      }\r\n    },\r\n\r\n    // 跳转评论\r\n    toPingDetail(com_id) {\r\n      uni.navigateTo({ url: `/pages/index/pingDetail?comId=${com_id}&itemId=${this.itemId}` })\r\n    },\r\n  },\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\">\r\n.indicator {\r\n  /* @include flex(row); */\r\n  display: flex;\r\n  justify-content: center;\r\n  margin-top: 40rpx;\r\n  margin-bottom: 62rpx;\r\n\r\n  &__dot {\r\n    height: 6px;\r\n    width: 6px;\r\n    border-radius: 100px;\r\n    background-color: rgba(0, 0, 0, 0.4);\r\n    margin: 0 5px;\r\n    transition: background-color 0.3s;\r\n\r\n    &--active {\r\n      background: rgba(0, 0, 0, 0.6);\r\n    }\r\n  }\r\n}\r\n.inputBox {\r\n  position: fixed;\r\n  bottom: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  padding: 24rpx 32rpx 32rpx;\r\n  box-sizing: border-box;\r\n  background: #fff;\r\n  border-radius: 24rpx 24rpx 0 0;\r\n  > .selectBox {\r\n    margin-bottom: 16rpx;\r\n    view:nth-child(1) {\r\n      color: rgba(0, 0, 0, 1);\r\n      font-size: 32rpx;\r\n    }\r\n    view:nth-child(2) {\r\n      color: rgba(33, 83, 212, 1);\r\n      font-size: 32rpx;\r\n    }\r\n  }\r\n}\r\n.topInfoBox {\r\n  padding: 24rpx;\r\n  box-sizing: border-box;\r\n  image {\r\n    width: 72rpx;\r\n    height: 72rpx;\r\n    border-radius: 50%;\r\n    margin-right: 24rpx;\r\n  }\r\n}\r\n.timeText {\r\n  :nth-child(1) {\r\n    color: rgba(0, 0, 0, 0.9);\r\n    font-size: 26rpx;\r\n    font-weight: 700;\r\n  }\r\n  :nth-child(2) {\r\n    color: rgba(0, 0, 0, 0.4);\r\n    font-size: 24rpx;\r\n  }\r\n}\r\n.mainBox {\r\n  padding: 0 24rpx;\r\n  box-sizing: border-box;\r\n  > .titleText {\r\n    color: rgba(0, 0, 0, 0.9);\r\n    font-size: 36rpx;\r\n    font-weight: 700;\r\n    margin-bottom: 24rpx;\r\n  }\r\n  > .centerText {\r\n    color: rgba(0, 0, 0, 0.6);\r\n    font-size: 28rpx;\r\n  }\r\n  margin-bottom: 40rpx;\r\n}\r\n.mainBox2 {\r\n  padding: 32rpx;\r\n  box-sizing: border-box;\r\n}\r\n.pingNumText {\r\n  color: rgba(0, 0, 0, 0.9);\r\n  font-size: 32rpx;\r\n  font-weight: 700;\r\n}\r\n.topBox {\r\n  position: relative;\r\n  margin-bottom: 40rpx;\r\n  .xia {\r\n    width: 256rpx;\r\n    height: 188rpx;\r\n    padding: 24rpx 32rpx;\r\n    box-sizing: border-box;\r\n    border-radius: 20rpx;\r\n    /* flex-direction: column; */\r\n    background: #fff;\r\n    position: absolute;\r\n    top: 70rpx;\r\n    right: 0rpx;\r\n    box-shadow: 0 4rpx 24rpx 0 rgba(0, 0, 0, 0.2);\r\n    view {\r\n      color: rgba(50, 50, 51, 1);\r\n      font-size: 28rpx;\r\n    }\r\n    :nth-child(1) {\r\n      padding-bottom: 22rpx;\r\n      border-bottom: 1rpx solid rgba(0, 0, 0, 0.1);\r\n    }\r\n    :nth-child(2) {\r\n      padding-top: 22rpx;\r\n    }\r\n  }\r\n}\r\n.bottomBtnBox {\r\n  background: #fff;\r\n  image {\r\n    width: 40rpx;\r\n    height: 40rpx;\r\n  }\r\n  position: fixed;\r\n  bottom: 60rpx;\r\n  left: 0;\r\n  padding: 16rpx 32rpx;\r\n  box-sizing: border-box;\r\n  > .favoriteBox {\r\n    margin-right: 24rpx;\r\n    padding: 16rpx 32rpx;\r\n    box-sizing: border-box;\r\n    border-radius: 38rpx;\r\n    background: rgba(247, 248, 250, 1);\r\n    view {\r\n      color: rgba(179, 179, 179, 1);\r\n      font-size: 28rpx;\r\n      margin-left: 24rpx;\r\n    }\r\n  }\r\n  > .likeBox {\r\n    view {\r\n      color: rgba(0, 0, 0, 0.9);\r\n      font-size: 28rpx;\r\n      margin-left: 8rpx;\r\n      min-width: 42rpx;\r\n    }\r\n  }\r\n}\r\n.fffBox {\r\n  position: fixed;\r\n  bottom: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 60rpx;\r\n  background: #fff;\r\n}\r\n.xImg {\r\n  width: 32rpx;\r\n  height: 32rpx;\r\n}\r\n.huifuText1Box {\r\n  margin-top: 16rpx;\r\n}\r\n.huifuText1 {\r\n  color: rgba(33, 83, 212, 1);\r\n  font-size: 28rpx;\r\n  margin-right: 10rpx;\r\n}\r\n.pingBox {\r\n  padding-bottom: 32rpx;\r\n  border-bottom: 1rpx solid rgba(0, 0, 0, 0.1);\r\n  margin-bottom: 32rpx;\r\n\r\n  > .pTopBox {\r\n    > .avatarBox {\r\n      color: rgba(0, 0, 0, 0.9);\r\n      font-size: 32rpx;\r\n      font-weight: 700;\r\n      image {\r\n        width: 64rpx;\r\n        height: 64rpx;\r\n        border-radius: 50%;\r\n        margin-right: 16rpx;\r\n      }\r\n    }\r\n    > .zanBox {\r\n      color: rgba(0, 0, 0, 0.9);\r\n      font-size: 28rpx;\r\n      image {\r\n        width: 40rpx;\r\n        margin-right: 8rpx;\r\n        height: 40rpx;\r\n      }\r\n    }\r\n  }\r\n  > .contentBox {\r\n    color: rgba(0, 0, 0, 0.9);\r\n    font-size: 28rpx;\r\n    margin-bottom: 16rpx;\r\n    margin-left: 80rpx;\r\n  }\r\n  > .timeBox {\r\n    margin-left: 80rpx;\r\n    margin-bottom: 24rpx;\r\n    view:nth-child(1) {\r\n      color: rgba(0, 0, 0, 0.4);\r\n      font-size: 24rpx;\r\n      margin-right: 48rpx;\r\n    }\r\n    view:nth-child(2) {\r\n      width: 114rpx;\r\n      height: 48rpx;\r\n      border-radius: 56rpx;\r\n      border: 1rpx solid #b88dff;\r\n      color: rgba(110, 22, 255, 1);\r\n      font-size: 24rpx;\r\n    }\r\n  }\r\n  > .hPBox {\r\n    padding: 24rpx;\r\n    box-sizing: border-box;\r\n    background: #f7f8fa;\r\n    margin-left: 80rpx;\r\n  }\r\n}\r\n.huifu {\r\n  > .nameText {\r\n    color: rgba(0, 0, 0, 0.9);\r\n    font-size: 28rpx;\r\n    font-weight: 700;\r\n    margin-right: 10rpx;\r\n  }\r\n  > .huifuText {\r\n    color: rgba(0, 0, 0, 0.4);\r\n    font-size: 28rpx;\r\n    margin-right: 10rpx;\r\n  }\r\n  text {\r\n    color: rgba(0, 0, 0, 0.9);\r\n    font-size: 28rpx;\r\n  }\r\n}\r\n.chao {\r\n  max-width: 600rpx;\r\n  overflow: hidden;\r\n  text-overflow: ellipsis;\r\n  display: -webkit-box;\r\n  -webkit-line-clamp: 2;\r\n  -webkit-box-orient: vertical;\r\n}\r\n.maskBox {\r\n  position: fixed;\r\n  top: 0;\r\n  left: 0;\r\n  width: 100%;\r\n  height: 100%;\r\n  background: transparent;\r\n}\r\n.huiBox {\r\n  z-index: 999;\r\n  position: fixed;\r\n  bottom: 60rpx;\r\n  left: 0;\r\n  width: 686rpx;\r\n  height: 72rpx;\r\n  padding: 16rpx 32rpx;\r\n  box-sizing: border-box;\r\n  background: #fff;\r\n  border-radius: 38rpx;\r\n  background: rgba(247, 248, 250, 1);\r\n  /* margin: 0 auto; */\r\n  margin-left: 32rpx;\r\n  > .zIndex {\r\n    z-index: 999;\r\n  }\r\n  view {\r\n    color: rgba(0, 0, 0, 0.4);\r\n    font-size: 28rpx;\r\n  }\r\n}\r\n.huiBox1 {\r\n  width: 100%;\r\n  height: 80rpx;\r\n  background: #fff;\r\n  position: fixed;\r\n  bottom: 50rpx;\r\n  left: 0;\r\n}\r\n</style>\r\n","import mod from \"-!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./detail.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./detail.vue?vue&type=style&index=0&lang=scss&\"","// extracted by mini-css-extract-plugin\n    if(module.hot) {\n      // 1670312678521\n      var cssReload = require(\"D:/高级前台制作/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n      module.hot.dispose(cssReload);\n      module.hot.accept(undefined, cssReload);\n    }\n  "],"sourceRoot":""}