当前位置: 首页 > news >正文

成都 网站建设 公司百度 营销推广费用

成都 网站建设 公司,百度 营销推广费用,wordpress重置,网站做搜索引擎优化为什么要用 JSX? JSX 给 HTML 赋予了 JS 的编程能力 JSX 的本质 JSX 是 JavaScript 的语法扩展,浏览器本身不能识别,需要通过解析工具(如babel)解析之后才能在浏览器中运行。 bable 官网可以查看解析过程 JSX 的语法 …

为什么要用 JSX?

JSX 给 HTML 赋予了 JS 的编程能力

JSX 的本质

JSX 是 JavaScript 的语法扩展,浏览器本身不能识别,需要通过解析工具(如babel)解析之后才能在浏览器中运行。

bable 官网可以查看解析过程

在这里插入图片描述

JSX 的语法

{} 中写 JS 表达式

类似 vue 的 {{}}

渲染 JS 数据

对象

<div style={{ color: "red" }}>朝阳</div>

其他类型的数据也能直接渲染,但基本不会使用。

渲染变量

function Demo() {const name = "朝阳";return (<><div>{name}</div></>);
}export default Demo;

调用函数

function getName() {return "朝阳";
}function Demo() {return (<><div>{getName()}</div></>);
}export default Demo;

调用方法

<div>{new Date().getDay()}</div>

添加注释

{/* 我是一段注释 */}

条件渲染 if

类似 vue 的 v-if

单分支 ( && )

function Demo() {const showName = true;return <>{showName && <div>朝阳</div>}</>;
}

双分支( 三元运算符 ?: )

function Demo() {const login = false;return <>{login ? <div>朝阳</div> : <button>登录</button>}</>;
}

多分支( 调用内含 if 的函数 )

单分支和双分支也能使用,只是麻烦了些。

const type = "2";function getTypeName() {if (type === "1") {return <div>生活</div>;} else if (type === "2") {return <div>学习</div>;} else if (type === "3") {return <div>工作</div>;}
}function Demo() {return <>{getTypeName()}</>;
}export default Demo;

若分支特别多,也可以使用 Switch 语句。

const type = "3";function getTypeName() {switch (type) {case "1":return <div>生活</div>;case "2":return <div>学习</div>;case "3":return <div>工作</div>;default:break;}
}function Demo() {return <>{getTypeName()}</>;
}export default Demo;

列表渲染 map

类似 vue 的 v-for

  • 必须设置独一无二的 key,且不能是 index 和随机数,通常用 id
  • key 能提升 react 更新渲染的性能
  • map 内箭头函数的返回值用 () 包裹
function Demo() {const list = [{id: 1,name: "朝阳",},{id: 2,name: "晚霞",},];return (<><ul>{list.map((item) => (<li key={item.id}>{item.name}</li>))}</ul></>);
}export default Demo;
  • 朝阳
  • 晚霞

绑定事件

类似 vue 的 v-on (简写@)

  • 以 on 开头,接首字母大写的事件名,如点击事件 onClick
function Demo() {function hello() {alert("你好");}return (<><button onClick={hello}>问好</button></>);
}export default Demo;

获取事件对象 e

  • 此处的e 是一个React 定义的已解决了跨浏览器的兼容性问题的合成事件。(vue中是原生事件)
  • 通过 e.nativeEvent 可获取原生事件
function Demo() {function hello(e) {console.log(e);}return (<><button onClick={hello}>问好</button></>);
}

自定义事件传参

需使用箭头函数,否则便是调用函数,会在页面加载时立马执行。

function Demo() {function hello(name) {alert("你好," + name);}return (<><button onClick={() => hello("朝阳")}>问好</button></>);
}export default Demo;

此时要想获取事件对象 e,需在箭头函数传入参数e

function Demo() {function hello(name, e) {console.log("你好," + name);console.log(e);}return (<><button onClick={(e) => hello("朝阳", e)}>问好</button></>);
}export default Demo;

添加样式

行内样式【不推荐】

<div style={{ color: "red" }}>你好</div>

类样式

  • 样式写在单独的(如与组件同名的)css 文件中
  • 通过 import 导入样式
  • 通过 className 属性添加样式,注意,不是 class

src\Demo.css

.red {color: red;
}

src\Demo.jsx

import "./Demo.css";const Demo = () => {return <div className="red">你好</div>;
};export default Demo;
http://www.hkea.cn/news/340739/

相关文章:

  • 网站建设硬件环境志鸿优化设计答案
  • 网页游戏网址推荐宁波网站推广网站优化
  • 福建就福建省住房与城乡建设厅网站高端网站建设企业
  • 网站如何做seo规划app怎么开发出来的
  • 吴江住房和城乡建设局官方网站产品软文是什么
  • 公司网站制作设谷歌seo是什么职业
  • 北京品牌高端网站建设公司燕郊今日头条
  • 网站制作公司徐州宁波网站seo哪家好
  • 做网站基本费用大概需要多少全媒体运营师报考官网在哪里
  • 网站建设款属于什么科目营业推广策划
  • 建设网站查证书网络广告有哪些形式
  • 分布式网站开发网络销售平台排名
  • 网站建设模板购买品牌seo培训
  • 深圳网站建设 cms网站推广交换链接
  • 标准物质网站建设5118站长工具箱
  • 做一个能注册用户的网站网络推广费用大概价格
  • 网站建设评价东莞谷歌推广
  • php网站后台进不去百度推广入口官网
  • 个人网站一键生成免费推广网站有哪些
  • 厦门做网站设计电商seo优化
  • wordpress视频点播seo技术是干什么的
  • 网站推广是怎么做的网络营销专业如何
  • 平面设计线上兼职上海网站seo
  • 个性化网站定制价格今日热点
  • 做网站的艰辛免费个人网站申请
  • 网站改版需要多久网站设计与制作毕业论文范文
  • 深圳横岗网站建设网站建设的推广渠道
  • 有没有什么网站免费做名片2023年新闻小学生摘抄
  • 新网金商网站外链查询工具
  • 网站建设的进度竞价托管选择微竞价