1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- <template>
- <view :class="['roadshow-search', tabsRoadshowSearch == 5 && 'roadshow-search-top']">
- <view class="audio-video-content">
- <view style="width: 49%" v-for="item in roadshowPageList" :key="item.Id">
- <RoadshowItem :list="item" @isCollectionHandeler="isCollectionHandeler" />
- </view>
- </view>
- <view v-if="showAudioBox">
- <audioModule :showAudioPop.sync="showAudioPop" />
- </view>
- </view>
- </template>
- <script>
- import { Home } from "@/config/api";
- import RoadshowItem from "@/components/ItemComponent/roadshowItem.vue";
- import audioModule from "@/components/audioModule/index";
- export default {
- props: {
- roadshowPageList: {
- type: Array,
- default: [],
- required: true,
- },
- tabsRoadshowSearch: {
- type: Number,
- required: true,
- },
- },
- data() {
- return {
- showAudioPop: false,
- };
- },
- computed: {
- showAudioBox() {
- return this.$store.state.audioBg.parseIntShow;
- },
- },
- components: { RoadshowItem, audioModule },
- methods: {
- // 微路演收藏
- async isCollectionHandeler(item) {
- await this.$store.dispatch("showLoginModal");
- const res = await Home.microRoadshowCollect({
- SourceId: item.SourceId,
- SourceType: item.Type,
- PageRouter: this.$store.state.pageRouterReport,
- });
- if (res.Ret === 200) {
- let index = this.roadshowPageList.findIndex((key) => key.SourceId == item.SourceId && key.Type == item.Type);
- res.Data.Status == 1 ? (this.$parent.roadshowPageList[index].IsCollect = true) : (this.$parent.roadshowPageList[index].IsCollect = false);
- uni.showToast({
- title: res.Msg,
- duration: 2000,
- });
- }
- },
- },
- };
- </script>
- <style lang="scss" scoped>
- .roadshow-search {
- padding: 35rpx 12rpx;
- .audio-video-content {
- display: flex;
- flex-wrap: wrap;
- justify-content: space-between;
- }
- }
- .roadshow-search-top {
- padding-top: 90rpx !important;
- }
- </style>
|