react入门-----(jsx语法,在react中获取真实的dom节点)

1、jsx语法

 1 var names = [‘Alice‘, ‘Emily‘, ‘Kate‘];
 2         <!-- HTML 语言直接写在 JavaScript 语言之中,不加任何引号,这就是 JSX 的语法,它允许 HTML 与 JavaScript 的混写 -->
 3         ReactDOM.render(
 4           <div>
 5           {
 6             names.map(function (name) {
 7               return <div>Hello, {name}!</div>
 8             })
 9           }
10           </div>,
11           document.getElementById(‘example‘)
12         );
13
14         var arr =[
15             <h1>Hello world!</h1>,
16               <h2>React is awesome</h2>,
17         ]
18         <!-- JSX 允许直接在模板插入 JavaScript 变量。如果这个变量是一个数组,则会展开这个数组的所有成员 -->
19         var ArrComponent = React.createClass({
20             render: function() {
21                 return <div>
22                     {arr}
23                 </div>
24             }
25         })
26         ReactDOM.render(
27             <ArrComponent/>,
28             document.getElementById(‘continer‘)
29         )

2、获取真实的DOM节点

var MyComponent = React.createClass({
            handleClick: function(event) {
                this.refs.myTextInput.focus()
                event.stopPropagation()
                event.preventDefault()
            },
            changeClick: function(event) {
                console.log(event.target.value)
            },
            render: function() {
                return (
                    <div>
                        <!-- 给虚拟dom添加ref属性 -->
                        <!-- 然后可以在函数中通过 ReactDOM.findDOMNode(this.refs.tip)来获取真实的dom节点-->
                        <input type="text" ref="myTextInput" onChange={this.changeClick}/>
                        <input type="text" value="Focus the text input" onClick={this.handleClick}/>
                    </div>
                )
            }
        })
        <!-- ReactDOM.render 是 React 的最基本方法,用于将模板转为 HTML 语言,并插入指定的 DOM 节点。 -->
        ReactDOM.render(
            <MyComponent/>,
            document.getElementById(‘continer‘)
        )
时间: 2024-10-11 11:02:11

react入门-----(jsx语法,在react中获取真实的dom节点)的相关文章

七.获取真实的DOM节点

组件并不是真实的DOM节点.而是存在于内存之中的数据结构.叫做虚拟DOM(virtual DOM). 只有当它插入文档后,才会变成真实的DOM. 根据React的设计.所有的DOM变动.都先在虚拟DOM下发生.然后在将实际发生变动的部分,反应在真实DOM上.这种算法叫DOMdiff.他可以极大的提高网页的性能表现. 但是有时需要从组件获取真实 DOM 节点.这时要用到ref属性. <!DOCTYPE html><html>  <head>    <script s

React之JSX语法

1. JSX的介绍 ??JSX(JavaScript XML)--一种在React组件内部构建标签的类XML语法.react在不使用JSX的情况下一样可以工作,然而使用JSX可以提高组件的可读性,因此推荐使用JSX. 基于ECMAScript的一种新特性 一种定义带属性树结构的语法 ??JSX的特性: ??它具备以下好处: 更加熟悉 更加语义化 更加直观 抽象化 关注分离点 2.JSX的使用 React对大小写敏感,如果是自定义组件,则必须首字母大写,如果是DOM自带的标签,则要小写(比如div

React的JSX语法及组件

最近一个同事很急没有做任何交接就请了陪产假,然后我来维护.说实在的我一开始是一脸懵逼的.因为MV*项目里用的最多的还是Vue:React听说也了解过,但毕竟不熟... 不过不管如何这也是工作:同事也恭喜同事当爸了,打心理为他感到高兴! 代码down下来后开始查看的时候语法基本上使用的都是CMD,ES6还有本文讲的JSX,React组件.CMD,ES6这不难毕竟平常也经常用.但是JSX,React组件一开始就有点懵逼, 不过多看几遍加百度Google就懂了. (好像废话有点多,好了,开始讲重点..

React入门---JSX内置表达式-6

个人理解:接触的JSX就是在React中render方法里面的js,因为里面只能有一个节点,所以你写的东西都在一个div中,要有js所以通过JSX来表达.(个人菜鸟理解,欢迎指正) React 使用 JSX 来替代常规的 JavaScript. JSX 是一个看起来很像 XML 的 JavaScript 语法扩展. 1.在JSX中注释需要下载花括号中,语法  {/*注释*/} 2.在 JSX 中不能使用 if else 语句,但可以使用 conditional (三元运算) 表达式来替代. 例:

react的jsx语法

在webpack.config.js中配置解析的loader { test:/\.jsx?$/, use:{ loader:"babel-loader", options:{ presets:["@babel/env","@babel/react"] } } }, jsx对象就是js对象!只不过jsx需要事先编译,才转为js对象! 在默认情况下,React DOM会将所有嵌入JSX的值进行编码.这样可以有效避免xss攻击. sx有个强大的地方就是

关于React之JSX语法理解

**理解:**javascript和HTML的结合,碰到<就按照HTML来解析,碰到{}就按照js来解析.也可以理解为可以在js代码书写HTML标签,每个标签最终都会转化为js代码来运行.他的语法规则大致如下: 1.必须有根元素,即最外层有且只有一个标签:2.所有的标签必须闭合:3.对大小写敏感,区分是组件还是Html标签:4.属性值必须加引号或者加{};5.标签内放"<"会报错,因为他会按照Html来解析:7.数组的循环(每个元素都会返回一个react组件);8.JSX允

React入门-JSX和虚拟dom

1.JSX理解 举例: const element = <h1>Hello, world!</h1>; 这被称为 JSX,是一个 JavaScript 的语法扩展.建议在 React 中配合使用 JSX,JSX 可以生成 React “元素”,而且JSX 可以很好地描述 UI 应该呈现出它应有交互的本质形式.JSX 可能会使人联想到模版语言,但它具有 JavaScript 的全部功能. 为什么用JSX? React 认为渲染逻辑本质上与其他 UI 逻辑内在耦合,比如,在 UI 中需

React的jsx语法,详细介绍和使用方法!

jsx语法 一种混合使用html及javascript语法的代码 在js中 遇到<xx>即开始html语法 遇到</xx>则结束html语法 恢复成js语法 例如: let Dom = <a href="javascript:;">按钮</a> 在html的范围内 若想使用js 则用 "{}" 将js代码括起来即可 例如: let url = "https://www.baidu.com" let

初学React:JSX语法

这是本人初学React做的学习笔记;讲的不是很深,只算是简单的进行介绍. 这是一个小系列.都是在同一个模板中搭建的,但是代码是不能正常执行的. >>第一个组件.js 'use strick' /*===========================JavaScript的XML语法========================*/ var CommentBox = React.createClass({ render:function () { return ( <div classN