partner-rule.vue 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. <template>
  2. <view class="partner-container">
  3. <!-- 自定义导航栏 -->
  4. <u-navbar
  5. :is-back="true"
  6. title="合伙人"
  7. back-icon-color="#ffffff"
  8. title-color="#ffffff"
  9. :background="{ background: '#38C148' }"
  10. :border-bottom="false"
  11. >
  12. </u-navbar>
  13. <!-- 内容区域 -->
  14. <view class="content-wrap">
  15. <!-- <view v-html="content"></view> -->
  16. <rich-text :nodes="content"></rich-text>
  17. <!-- <u-parse :html="content" @imgtap="handleImageTap" :tag-style="tagStyle"></u-parse> -->
  18. </view>
  19. <!-- 底部按钮 -->
  20. <view class="bottom-btn-wrap">
  21. <image
  22. v-if="baseInfo.status == -1"
  23. src="/pages-mine/static/partner-rule.png"
  24. mode="aspectFit"
  25. style="width: 100%; height: 120rpx"
  26. @click="applyPartner"
  27. ></image>
  28. <image
  29. v-else
  30. src="/pages-mine/static/partner-rule-disabled.png"
  31. mode="aspectFit"
  32. style="width: 100%; height: 120rpx"
  33. ></image>
  34. </view>
  35. </view>
  36. </template>
  37. <script>
  38. export default {
  39. data() {
  40. return {
  41. content: "", // 富文本内容
  42. baseInfo: "",
  43. tagStyle: {
  44. img: "width: 100%; height: auto;",
  45. p: "margin: 0; padding: 0; display: block;",
  46. ".interlayer": "display: grid",
  47. },
  48. };
  49. },
  50. onLoad() {
  51. this.getPartnerInfo();
  52. this.getPartnerRule();
  53. },
  54. methods: {
  55. async getPartnerInfo() {
  56. try {
  57. const res = await uni.$u.http.get("/token/getUserPartnerInfo");
  58. if (res.code === 200) {
  59. this.baseInfo = res.data;
  60. }
  61. } catch (e) {
  62. console.error(e);
  63. }
  64. },
  65. //获取合伙人规则
  66. async getPartnerRule() {
  67. try {
  68. const res = await uni.$u.http.get("/token/getUserPartnerRule");
  69. if (res.code === 200) {
  70. this.content = res.data.content.replace(
  71. /<img/g,
  72. '<img style="width: 100%; height: auto;display: block;vertical-align: top"'
  73. );
  74. }
  75. } catch (e) {
  76. console.error(e);
  77. }
  78. },
  79. //跳转至合伙人申请页面
  80. applyPartner() {
  81. uni.navigateTo({
  82. url: "/pages-mine/pages/partner/partner-apply",
  83. });
  84. },
  85. //图片点击事件
  86. handleImageTap(e) {
  87. return e.ignore();
  88. },
  89. },
  90. };
  91. </script>
  92. <style>
  93. /* 设置富文本中段落的样式 */
  94. rich-text img {
  95. width: 100% !important;
  96. height: auto !important;
  97. }
  98. </style>
  99. <style lang="scss" scoped>
  100. .partner-container {
  101. min-height: 100vh;
  102. background-color: #ffffff;
  103. }
  104. /* 富文本内容样式 */
  105. .content-wrap {
  106. font-size: 0; /* 消除图片间的空白间隙 */
  107. }
  108. .content-wrap rich-text {
  109. font-size: 28rpx; /* 恢复文字的正常大小 */
  110. }
  111. rich-text img {
  112. width: 100% !important;
  113. height: auto !important;
  114. display: block; /* 防止图片之间的间隙 */
  115. margin: 0; /* 移除可能的外边距 */
  116. padding: 0; /* 移除可能的内边距 */
  117. vertical-align: top; /* 防止图片底部的间隙 */
  118. }
  119. // .bottom-btn-wrap {
  120. // position: fixed;
  121. // bottom: 0;
  122. // left: 0;
  123. // right: 0;
  124. // background-color: #ffffff;
  125. // display: flex;
  126. // justify-content: center;
  127. // box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.05);
  128. // }
  129. </style>