semDetail.vue 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. <template>
  2. <div id="semDetail">
  3. <el-row>
  4. <div class="w_1200">
  5. <el-col :span="24" class="semDetail">
  6. <el-col :span="24" class="messInfo">
  7. <el-col :span="6" class="left">
  8. <el-image style="width:100%;height:238px;" v-if="detailinfo.picture" :src="detailinfo.picture"></el-image>
  9. <el-image v-else style="width:100%;height:238px;" :src="pic"></el-image>
  10. <p>{{ detailinfo.title }}</p>
  11. <p>发布时间:{{ detailinfo.publish_time }}</p>
  12. <p>来源:{{ detailinfo.orgin }}</p>
  13. </el-col>
  14. <el-col :span="18" class="right">
  15. {{ detailinfo.content }}
  16. </el-col>
  17. </el-col>
  18. <el-col :span="24" class="chatInfo">
  19. <el-col :span="24" class="message">
  20. <el-col :span="24" class="info chat_frame" id="chat">
  21. <el-col :span="24" v-for="(item, index) in fabiaolist" :key="index" class="list">
  22. <el-col :span="4" class="lefts">
  23. <el-image :src="squareImage" style="width:65%;height: 128px;"></el-image>
  24. <p>
  25. <span>{{ item.name }}</span>
  26. </p></el-col
  27. ><el-col :span="19" class="under">
  28. <p>{{ item.context }}</p>
  29. <p>
  30. <span class="date">{{ item.ceng }}&nbsp;&nbsp;{{ item.date }}&nbsp;&nbsp;{{ item.time }}</span>
  31. </p></el-col
  32. >
  33. <el-col></el-col
  34. ></el-col>
  35. </el-col>
  36. </el-col>
  37. <el-col :span="24" class="input">
  38. <el-col :span="24" class="title"><i class="el-icon-edit"></i> 发布评论 </el-col>
  39. <wang-editor v-model="inputInfo" ref="editor" class="huifu"></wang-editor>
  40. <el-button type="primary">发布评论</el-button>
  41. </el-col>
  42. </el-col>
  43. </el-col>
  44. </div>
  45. </el-row>
  46. </div>
  47. </template>
  48. <script>
  49. import wangEditor from '@/components/wang-editor.vue';
  50. import { mapState, createNamespacedHelpers } from 'vuex';
  51. const { mapActions: news } = createNamespacedHelpers('news');
  52. export default {
  53. name: 'semDetail',
  54. props: {},
  55. components: {
  56. wangEditor,
  57. },
  58. data: () => ({
  59. detailinfo: {},
  60. pic: require('@/assets/live/1.jpg'),
  61. squareImage: require('@/assets/live/circle.png'),
  62. inputInfo: '',
  63. fabiaolist: [
  64. { name: '测试1', context: 'ddasdadssssssssssssssssssssssssssssssssssssssssssssssssad', ceng: '1楼', time: '23:11', date: '2020-03-05' },
  65. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  66. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  67. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  68. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  69. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  70. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  71. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  72. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  73. { name: '测试1', context: 'dasdsadasd', ceng: '2楼', time: '23:11', date: '2020-03-05' },
  74. ],
  75. }),
  76. created() {
  77. this.search();
  78. },
  79. computed: {
  80. id() {
  81. return this.$route.query.id;
  82. },
  83. ...mapState(['user']),
  84. pageTitle() {
  85. return `${this.$route.meta.title}`;
  86. },
  87. },
  88. methods: {
  89. ...news(['fetch']),
  90. async search() {
  91. const res = await this.fetch(this.id);
  92. this.$set(this, `detailinfo`, res.data);
  93. },
  94. },
  95. };
  96. </script>
  97. <style lang="less" scoped>
  98. .w_1200 {
  99. width: 80%;
  100. margin: 0 auto;
  101. }
  102. .semDetail {
  103. float: left;
  104. width: 100%;
  105. min-height: 600px;
  106. margin: 30px 0;
  107. }
  108. .semDetail .messInfo {
  109. float: left;
  110. width: 100%;
  111. height: 400px;
  112. overflow: hidden;
  113. }
  114. .messInfo .left p {
  115. float: left;
  116. width: 100%;
  117. font-size: 18px;
  118. padding: 5px 0 10px 0;
  119. color: gold;
  120. letter-spacing: 0;
  121. }
  122. .messInfo .left p:nth-child(2) {
  123. font-weight: bold;
  124. }
  125. .messInfo .right {
  126. font-size: 18px;
  127. line-height: 35px;
  128. text-indent: 2rem;
  129. overflow: hidden;
  130. text-overflow: ellipsis;
  131. -webkit-line-clamp: 11;
  132. word-break: break-all;
  133. display: -webkit-box;
  134. -webkit-box-orient: vertical;
  135. padding: 0 30px;
  136. border-bottom: 1px solid red;
  137. border-right: 1px solid red;
  138. height: 380px;
  139. }
  140. .semDetail .chatInfo {
  141. float: left;
  142. width: 100%;
  143. min-height: 400px;
  144. }
  145. .chatInfo .message {
  146. float: left;
  147. min-height: 400px;
  148. margin: 0 0 30px 0;
  149. }
  150. .list {
  151. border-bottom: 1px solid #fff;
  152. border-left: 1px solid #fff;
  153. min-height: 200px;
  154. background-color: #e5e5e5;
  155. /* width: 99.9%; */
  156. padding: 15px 0 0 0;
  157. margin: 1px 0 0 1px;
  158. }
  159. .lefts {
  160. padding: 20px 0 0 20px;
  161. }
  162. .lefts p {
  163. text-align: center;
  164. width: 70%;
  165. }
  166. .under {
  167. padding: 20px 0 20px 20px;
  168. width: 80%;
  169. background-color: #fff;
  170. min-height: 160px;
  171. }
  172. .date {
  173. text-align: center;
  174. position: relative;
  175. width: 100%;
  176. font-size: 18px;
  177. top: 80px;
  178. left: 1050px;
  179. }
  180. .chatInfo .input {
  181. float: left;
  182. // height: 290px;
  183. height: 340px;
  184. overflow: hidden;
  185. text-align: center;
  186. padding: 0 10%;
  187. background-color: #e5e5e5;
  188. }
  189. .huifu {
  190. background-color: #ffffff;
  191. }
  192. .title {
  193. text-align: left;
  194. padding: 5px 0 10px 0;
  195. background-color: #e5e5e5;
  196. color: #ff7f42;
  197. }
  198. .chatInfo .input .el-button {
  199. margin: 20px 0 0 0;
  200. }
  201. </style>