多媒体信息发布平台
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.

90 lines
2.1 KiB

3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
  1. <template>
  2. <div class="theme">
  3. <!-- 右上角btn -->
  4. <div class="home_publish_btn">
  5. <el-button round class="el_button_red" @click="publishHandle(0)">即时发布</el-button>
  6. <el-button round type="primary" @click="publishHandle(1)">定时发布</el-button>
  7. <el-button round class="publish_muilt_btn" @click="multiSelectBtn">{{ mulitText }}</el-button>
  8. </div>
  9. <!-- 主题库list -->
  10. <ThemeGalleryList
  11. ref="ThemeGalleryList"
  12. :is-multi-selected="isMultiSelected"
  13. :mulit-text="mulitText"
  14. :show-item-info="false"
  15. :is-my-album="isMyAlbum"
  16. />
  17. </div>
  18. </template>
  19. <script>
  20. import ThemeGalleryList from '@/views/components/ThemeGalleryList.vue'
  21. export default {
  22. name: 'ThemeGallery',
  23. components: { ThemeGalleryList },
  24. data() {
  25. return {
  26. isMyAlbum: false,
  27. mulitText: '多选',
  28. isMultiSelected: false
  29. }
  30. },
  31. mounted() {
  32. },
  33. methods: {
  34. // 多选btn
  35. multiSelectBtn() {
  36. this.isMultiSelected = !this.isMultiSelected
  37. if (this.isMultiSelected) {
  38. this.mulitText = '取消'
  39. } else {
  40. this.mulitText = '多选'
  41. }
  42. },
  43. publishHandle(index) {
  44. localStorage.removeItem('selectedMaterial')
  45. localStorage.removeItem('releaseId')
  46. const selectedMaterial = this.$refs.ThemeGalleryList.selectedMaterial
  47. localStorage.setItem('selectedMaterial', JSON.stringify(selectedMaterial))
  48. this.$router.push(
  49. {
  50. path: '/release', query: { tag: index }
  51. }
  52. )
  53. }
  54. }
  55. }
  56. </script>
  57. <style lang="scss" scoped>
  58. .theme {
  59. position: relative;
  60. width: 100%;
  61. background: #fff;
  62. margin-top: 24px;
  63. padding-top: 8px;
  64. border-radius: 4px;
  65. min-height: calc(100vh - 384px);
  66. ::v-deep .el-tabs__header {
  67. padding: 0 26px;
  68. }
  69. ::v-deep .el-tabs__item {
  70. font-size: 16px;
  71. height: 50px;
  72. line-height: 50px;
  73. }
  74. ::v-deep .el-tabs__active-bar {
  75. height: 3px;
  76. }
  77. .publish_muilt_btn{
  78. padding: 6px 20px;
  79. border: 1px solid #3a8aeb;
  80. color: #3a8aeb;
  81. }
  82. ::v-deep .theme_img {
  83. padding-left: 26px;
  84. height: calc(100vh - 449px);
  85. overflow-y: auto;
  86. }
  87. }
  88. </style>