[英]How to add 'a' link tag with hyperlink in Reactjs app
我在将超链接添加到自定义单元格的文本时遇到了一些问题。 我已经在自定义单元格中添加了一个标签,但是正如您在代码沙箱中看到的那样,它似乎无法正常工作,但div标签中仍然存在“ a”标签。 我怎么解决这个问题?
完整的代码和演示可以通过codeSandbox访问
我使用React-data-table-component,并且按照正确的方法添加超链接,但似乎不起作用。 而且我不知道为什么它不起作用。 它说它使用JSX。
const columns = [
{
name: 'Coin Name',
selector: 'key',
sortable: true,
cell: row => (
<a
href={'https://www.bithumb.com/trade/order/' + row.key}
target="_blank"
rel="noopener noreferrer">
{row.key}
</a>
),
},
}
默认情况下, React Data Table Component
具有名为ignoreRowClick
的列属性,该属性默认设置为false
。 这有助于onRowClicked
被不必要地触发。 如果设置ignoreRowClick
为true,您的a
标签点击会工作。
{
name: 'Coin Name',
selector: 'key',
sortable: true,
ignoreRowClick: true,
cell: row => (
<a
href={'https://www.bithumb.com/trade/order/' + row.key}
target="_blank"
rel="noopener noreferrer">
{row.key}
</a>
),
},
数据表使用div
和其他一些包装器包装了<a/>
标签。 当您在内部单击<a/>
,不会在该元素上生成单击,而是在其父元素上生成(父元素定义对整行的单击)。 如果你尝试这个
<a href={"https://www.bithumb.com/trade/order/" + row.key}
target="_blank"
rel="noopener noreferrer"
style={{ position: "absolute" }}>
{row.key}
</a>
它将起作用,但这不是一个优化的解决方案。 如果您查看datatables文档,将会发现一个名为ignoreRowClick
的属性。 这将防止整个行的单击事件,并激活对特定列单元格的单击。
所以代码将是
{
name: "Coin Name",
selector: "key",
sortable: true,
ignoreRowClick: true, // This is the change
cell: row => (
<a
href={"https://www.bithumb.com/trade/order/" + row.key}
target="_blank"
rel="noopener noreferrer"
style={{ position: "absolute" }}
>
{row.key}
</a>
)
},
请阅读数据表文档以获取更多信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.