【问题标题】:I want to insert a link href with target attribute in json object我想在 json 对象中插入带有 target 属性的链接 href
【发布时间】:2020-11-15 11:24:01
【问题描述】:
  ...

    "Social": [{
                    "href": "\"https://www.facebook.com/examplepage\" target:\"_blank\"",                       
                    "icon": "facebook",
                    "title": "Facebook"
                },
...

我想在新选项卡中打开这个 facebook 页面。这是 json 文件的一部分,它将导入到 firebase 实时数据库。这是一个反应网页,按钮内有一个链接,可以通过单击访问 facebook按钮。正如您在上面看到的,此代码是 json 的一部分,将被导入到 firebase db,它与该 react 应用程序相连。根据上面的代码,一旦按钮单击 fb 页面就会在同一页面中打开。但我想在新选项卡中打开此页面。所以我的问题是我想以适当的方式包含目标属性。我尝试了上面的代码,但页面打开的是同一页面

【问题讨论】:

  • "Social": [{ "href": "facebook.com/examplepage", "icon": "facebook", "title": "Facebook" },这就是我的 json 文件当前的工作方式。我放入href的链接应该在新标签中打开,我们可以在这里配置吗

标签: html json reactjs firebase


【解决方案1】:

就这样添加

<button>
  <a href={`${Social[0].href}`} rel="noopener noreferrer" target="_blank">
    Facebook
  </a>
</button>

当然,如果这是一个你想要循环的数组

 YourJson['Social'].map(data => {
  return (
    // your jsx block which include the button
    <button>
      <a href={`${data.href}`} rel="noopener noreferrer" target="_blank">
        {data.title}
      </a>
    </button>
  );
});

【讨论】:

  • 键值对格式是什么意思。你想要并且我引用“我想在新标签中打开这个 facebook 页面”你可以在地图功能或简单的 jsx 中使用这部分,它的概念相同。你所需要的只是一个带有 target = "_blank" 的 href
  • 这是 json 文件的一部分,它是一个实时的 firebase db,我必须插入链接。它正在工作,但我必须在新选项卡中打开它。如果我想在 react jsx 文件中使用没关系..但它应该是 json 文件。
  • 现在可以使用了。我试图在firebase db json文件中的新标签条件下打开..但现在我理解它不是一个正确的方法。然后我像上面的代码一样在React页面中更新了这个逻辑。现在它工作正常。
【解决方案2】:

使用这个:

<Link {...Social[0]} >Your Link</Link>

展开运算符是为元素动态分配属性的最佳方式。

【讨论】:

  • 我想将它插入到json文件中。它应该是一个键值对。但是你的答案看起来不像你能解释一下。
  • href 链接是正确的,我在这里复制时出错了。
  • 我很抱歉我误解了你的问题。这是正确的解决方案。
  • 我相信他不想将它作为道具传递,我引用他的话“我想将它插入到 json 文件中”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-06-18
  • 1970-01-01
  • 2012-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-09
相关资源
最近更新 更多