jsx 是一种语法扩展,允许你在 typescript 代码中使用类似于 xml 的语法来创建 react 组件。它的优点包括可读性和可维护性更强、代码更少、ide 支持更好,使用方法是导入 react 模块并启用 jsx 编译器选项。jsx 元素可以具有属性(使用花括号传递)和嵌套元素。需要注意的是,使用 jsx 时需要导入 react 模块,jsx 标签必须闭合,属性必须用花括号括起来。
TypeScript 中的 JSX
JSX 是什么?
JSX(JavaScript XML)是一种语法扩展,允许你在 TypeScript 代码中使用类似于 XML 的语法。它用于生成 React 组件。
优势
使用 JSX 有几个优势:
使用方法
要使用 JSX,你需要导入 React 模块并启用 JSX 编译器选项。
import React from "react"; // 启用 JSX 编译器选项 // tsconfig.json { "compilerOptions": { "jsx": "react-jsx" } }
然后,你可以使用 JSX 语法创建 React 组件。例如:
const MyComponent = () => { return ( <div> <h1>标题</h1> <p>段落</p> </div> ); };
属性
JSX 元素可以具有属性,就像 HTML 元素一样。传递属性时,必须使用花括号 { }。例如:
const Button = (props) => { return ( <button onclick="{props.onClick}"> {props.label} </button> ); };
嵌套元素
JSX 元素可以嵌套在其他元素中。例如:
const App = () => { return ( <div> <header></header><content></content><footer></footer> </div> ); };
注意事项