首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >新窗口中的Vue.js打开链接

新窗口中的Vue.js打开链接
EN

Stack Overflow用户
提问于 2019-01-26 21:31:00
回答 1查看 9.9K关注 0票数 1

我有Vue.js代码

代码语言:javascript
复制
  <div class="footer-items">
  <span v-for="link in links" :key="link.name">
  <a :href="link.Link" class="tertiary--text footer-links">{{ link.name }}</a>
  </span>
</div>

这给了我一个页脚与一些链接。我想让这些链接中的一些打开外部窗口或标签。

它从其中加载的数组是:

代码语言:javascript
复制
   data: () => ({
   links: [
  { name: "Home", Link: "/dashboard" }, // needs to open same page
  { name: "PubMed", Link: "https://www.ncbi.nlm.nih.gov/pubmed" } // needs new window
  ]

这是可行的,但它在同一个窗口打开,我试过:

代码语言:javascript
复制
        { name: "PubMed", Link: "https://www.ncbi.nlm.nih.gov/pubmed/,_blank" },  // error page

        { name: "PubMed", Link: "https://www.ncbi.nlm.nih.gov/pubmed/','_blank" }, // open same page

        { name: "PubMed", Link: "https://www.ncbi.nlm.nih.gov/pubmed/"','"_blank" },  // won't compile

        Link: "https://www.ncbi.nlm.nih.gov/pubmed/ target=_blank"  // opens same window

是否可以以编程方式将其发送到href。我无法更改href,因为并非所有页面都需要在新窗口中打开。

我将代码更改为:

代码语言:javascript
复制
          <a :href="link.Link" target="link.place" class="tertiary--text 
           footer-links">{{ link.name }}</a>

并在数组中添加一个位置:

代码语言:javascript
复制
          { name: "Home", Link: "/dashboard", place: "_self" },
           {name: "PubMed", Link: "https://www.ncbi.nlm.nih.gov/pubmed/",
           place: "_blank"
         },

它们都是在新窗户里打开的。所有的帮助都是感激的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-26 21:38:36

试试这个(小提琴):

代码语言:javascript
复制
// Script
links: [
    { name: "Home", href: "/dashboard", target: "_self" },
    { name: "Google", href: "https://www.google.com/", target: "_blank" },
]

// Template
<a
    v-for="link in links"
    :key="link.name"
    :href="link.href"
    :target="link.target"
    rel="noopener noreferrer">
    {{ link.name }}
</a>
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54382967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档