RemarkChs.vue 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <!-- -->
  2. <template>
  3. <div
  4. v-if="
  5. remarkDetail &&
  6. (remarkDetail.chs || remarkDetail.en || (remarkDetail.img_list && remarkDetail.img_list.length > 0))
  7. "
  8. class="remarkChs"
  9. :style="{ top: marginTop ? marginTop + 'px' : '0px' }"
  10. >
  11. <div v-if="remarkDetail.chs" class="remark-chs" v-html="remarkDetail.chs"></div>
  12. <div v-if="remarkDetail.en" class="remark-en" v-html="remarkDetail.en"></div>
  13. <div v-if="remarkDetail.img_list && remarkDetail.img_list.length > 0" class="remark-img">
  14. <el-image
  15. :style="{
  16. width: remarkDetail.widthNumber ? remarkDetail.widthNumber + 'px' : '',
  17. height: remarkDetail.heightNumber ? remarkDetail.heightNumber + 'px' : '',
  18. }"
  19. :src="remarkDetail.img_list[0].url"
  20. fit="contain"
  21. :preview-src-list="[remarkDetail.img_list[0].url]"
  22. />
  23. </div>
  24. </div>
  25. </template>
  26. <script>
  27. export default {
  28. name: 'RemarkChs',
  29. components: {},
  30. props: ['remarkDetail', 'marginTop'],
  31. data() {
  32. return {};
  33. },
  34. computed: {},
  35. watch: {},
  36. // 生命周期 - 创建完成(可以访问当前this实例)
  37. created() {},
  38. // 生命周期 - 挂载完成(可以访问DOM元素)
  39. mounted() {},
  40. beforeCreate() {}, // 生命周期 - 创建之前
  41. beforeMount() {}, // 生命周期 - 挂载之前
  42. beforeUpdate() {}, // 生命周期 - 更新之前
  43. updated() {}, // 生命周期 - 更新之后
  44. beforeDestroy() {}, // 生命周期 - 销毁之前
  45. destroyed() {}, // 生命周期 - 销毁完成
  46. activated() {},
  47. // 方法集合
  48. methods: {}, // 如果页面有keep-alive缓存功能,这个函数会触发
  49. };
  50. </script>
  51. <style lang="scss" scoped>
  52. //@import url(); 引入公共css类
  53. .remarkChs {
  54. position: absolute;
  55. top: 0;
  56. box-sizing: border-box;
  57. width: 95%;
  58. // border: 1px solid rgba(0, 0, 0, 10%);
  59. border-radius: 8px;
  60. box-shadow: 0 4px 8px rgba(0, 0, 0, 10%);
  61. > .remark-chs {
  62. box-sizing: border-box;
  63. display: flex;
  64. align-items: center;
  65. justify-content: center;
  66. width: 100%;
  67. min-height: 34px;
  68. font-size: 14px;
  69. font-weight: normal;
  70. line-height: 22px;
  71. color: #fff;
  72. text-align: center;
  73. background: #988ed6;
  74. border: 1px solid rgba(0, 0, 0, 10%);
  75. border-radius: 8px 8px 0 0;
  76. :deep p {
  77. margin: 0;
  78. }
  79. }
  80. > .remark-en {
  81. box-sizing: border-box;
  82. min-height: 34px;
  83. font-size: 14px;
  84. line-height: 22px;
  85. color: #000;
  86. text-align: center;
  87. word-break: break-word;
  88. border-top: 0;
  89. border-radius: 0 0 8px 8px;
  90. :deep p {
  91. margin: 0;
  92. }
  93. }
  94. > .remark-img {
  95. width: 100%;
  96. text-align: center;
  97. .el-image {
  98. max-width: 178px;
  99. }
  100. }
  101. }
  102. </style>