在VUE中将数据添加到href

时间:2018-11-05 11:36:19

标签: javascript vue.js vue-component vue-router nuxt.js

在Vue中将数据添加到HREF时存在一些问题。我目前有以下代码来渲染相应的图标。

           <v-card-text>
            <v-btn
              v-for="icon in icons"
              :key="icon"
              class="mx-3 white--text"
              icon
            >
              <v-icon  size="24px">{{ icon.icon }}
              </v-icon>
                <a :href="`#${icon.link}`" ></a>
            </v-btn>
          </v-card-text>

数据如下:

     icons: [
      {icon:'fab fa-facebook', link:'https://www.facebook.com/user'},
      {icon:'fab fa-twitter', link:'https://twitter.com/user'},
      {icon:'fab fa-linkedin', link:'https://www.linkedin.com/in/user/'},
      {icon:'fab fa-instagram', link:'https://www.instagram.com/user/'},
    ],

图标本身可以正确渲染,但是我一生无法获得有效的链接。

如何使用{{icon.link}}

将href链接到图标

3 个答案:

答案 0 :(得分:1)

<a>标记内没有任何内容。这应该起作用:

<v-card-text>
  <v-btn
    v-for="icon in icons"
    :key="icon"
    class="mx-3 white--text"
    icon
  >
    <a :href="`#${icon.link}`">
      <v-icon size="24px">{{ icon.icon }}</v-icon>
    </a>
  </v-btn>
</v-card-text>

答案 1 :(得分:0)

要绑定数据,您只需要在href中进行v绑定,并正确定位您想要在href中定位的位置,请继续我将提供的示例。

<div id="app">
<a :href="icons[1].link" >test</a>
</div>

new Vue({
el: '#app',
data: () => ({
icons: [
      {icon:'fab fa-facebook', link:'https://www.facebook.com/user'},
      {icon:'fab fa-twitter', link:'https://twitter.com/user'},
      {icon:'fab fa-linkedin', link:'https://www.linkedin.com/in/user/'},
      {icon:'fab fa-instagram', link:'https://www.instagram.com/user/'},
    ]
})
})

示例: https://jsfiddle.net/hamiltongabriel/ke8w9czy/16/

答案 2 :(得分:0)

您可以将href属性直接分配给vuetify按钮。

<v-btn
    v-for="icon in icons"
    :key="icon"
    class="mx-3 white--text"
    icon
    :href="icon.link"
    >
    <v-icon  size="24px">{{ icon.icon }}
    </v-icon>
</v-btn>

Vuetify Button Doc