我想在多个位置重复使用我的JSX元素。
const value= <div>some text<Link href="abc.com">text</Link></div>
我希望在多个地方调用value。
我尝试为div添加' ',但无法正确获取元素。它返回的是字符串。有人能解释一下将jsx元素渲染到JavaScript变量的正确语法吗?
我想在多个位置重复使用我的JSX元素。
const value= <div>some text<Link href="abc.com">text</Link></div>
我希望在多个地方调用value。
我尝试为div添加' ',但无法正确获取元素。它返回的是字符串。有人能解释一下将jsx元素渲染到JavaScript变量的正确语法吗?
我想在多个地方重复使用我的jsx元素。
你不能。它只能在一个地方使用。 看起来你可以,我被Mosè Raguzzini纠正了,这样做完全没问题:
const value= <div>some text<Link href="http://example.com">text</Link></div>;
ReactDOM.render(
<div>
{value}
{value}
{value}
</div>,
document.getElementById("root")
);
实时示例:
const value= <div>some text<a href="http://example.com">text</a></div>;
ReactDOM.render(
<div>
{value}
{value}
{value}
</div>,
document.getElementById("root")
);
<div id="root"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.9.0/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.9.0/umd/react-dom.production.min.js"></script>
const getValue = () => <div>some text<Link href="abc.com">text</Link></div>;
当您需要一个值时,使用getValue()
来获取它。
甚至可以将其大写以使其成为功能组件:
const Value = () => <div>some text<Link href="abc.com">text</Link></div>;
现场示例(两者都):
const getValue = () => <div>some text<a href="http://example.com">text</a></div>;
const Value = () => <div>some text<a href="http://example.com">text</a></div>;
ReactDOM.render(
<div>
{getValue()}
{getValue()}
<Value />
<Value />
</div>,
document.getElementById("root")
);
<div id="root"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.9.0/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.9.0/umd/react-dom.production.min.js"></script>
const value= <div>some text<Link href="abc.com">text</Link></div>
除了在末尾依赖ASI(自动分号插入)之外,因为没有;
。这样做完全没问题。但它并不具备可重用性。
以下是一个示例:
const value= <div>some text<a href="http://example.com">text</a></div>;
ReactDOM.render(
<div>
{value}
</div>,
document.getElementById("root")
);
<div id="root"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.9.0/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.9.0/umd/react-dom.production.min.js"></script>
createElement
只是存储有关如何创建元素的信息。它实际上是在使用时创建的。今天我学到了一些关于React的基本知识,再次感谢。 - T.J. Crowder import React from "react"
export const MyComponent = () => (
<div>
some text <Link href="abc.com">text</Link>
</div>
);
()
包围起来。 - mashvalue
?缺少太多信息。 - Vencovsky./abc.com
上有一个文档,否则该href
无效。您需要在其前面添加一个方案。 - T.J. Crowder