如何在Vue(Nuxt)中将图像用作Vue轮播的导航标签?

问题描述 投票:0回答:1

我正在使用Vue Carousel(https://github.com/SSENSE/vue-carousel)。我想将navigationNextLabelnavigationPrevLabel用作图像。意思是,我有2张图像,即previous_arrow.pngnext_arrow.png,我想单击以在该转盘上滑动。

但是我不知道如何在:navigationNextLabel:navigationPrevLabel中嵌入图像。这是我到目前为止的内容:

<template>
<carousel 
  :per-page="1" 
  :mouse-drag="true" 
  :navigation-enabled="true"
  :navigation-next-label="<div><img src="../assets/next_arrow.png" class="w-12 h-12" /></div>"
  :navigation-previous-label="<div><img src="../assets/previous_arrow.png" class="w-12 h-12"/></div>"
>

<slide> Slide content 1 </slide>
<slide> Slide content 2 </slide>
<slide> Slide content 3 </slide>

</carousel>
</template>

<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator';

@Component
export default class Gallery extends Vue {
  @Prop() 'navigationEnabled'!: string;
  @Prop() 'navigationNextLabel'!: string;
  @Prop() 'navigationPreviousLabel'!: string;
}
</script>

我得到的错误:'v-bind' directives require an attribute value.

希望得到一些帮助。谢谢!

vue.js vuejs2 carousel nuxt.js
1个回答
0
投票

可以使用CSS代替html标签。当然不要忘记隐藏默认按钮html。

.VueCarousel-navigation-button::before {
   content: "";
   position: absolute;
   top: 8px;
   height: 25px;
   width: 25px;
}

.VueCarousel-navigation-next::before {
   background: url('~/assets/previous_arrow.png');
   right: 6px;
}

.VueCarousel-navigation-prev::before {
   background: url('~/assets/previous_arrow.png');
   left: 6px;
}
© www.soinside.com 2019 - 2024. All rights reserved.