博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
typescript 与 js 开发 react 的区别
阅读量:6203 次
发布时间:2019-06-21

本文共 1296 字,大约阅读时间需要 4 分钟。

一、从定义文件格式方面说

1、传统的开发模式可以定义js文件或者jsx文件
2、利用ts开发定义的文件格式tsx
二、定义state的状态来说
1、传统的方式直接在构造函数中使用

constructor(){    this.state = {        num1:10    }}

2、使用ts开发过程中需要先定义一个接口,规范数据类型,通过泛型传入到类中

//定义一个接口规范state的类型  export interface State{    num1:number}// 默认导出一个Hello类,如果Component
里面没有就用objectexport default class Hello extends React.Component
{ constructor(props:Props){ super(props); this.state = { num1:10 } }}

三、父组件传递参数到子组件

1、传统的方式直接使用就可以,如果要约束数据类型参考文档
2、使用ts开发方式,跟上面的state一样的,只是不管怎么样都要在构造函数中写super
四、从获取真实的DOM节点上来说(关于为什么要在componentDidMount中获取请参考参考)
1、传统的方式直接在DOM节点上定义ref就可以生命周期钩子函数componentDidMount中获取

const myref= this.refs.refname;const myrefdom = findDOMNode(myref);

2、在ts中获取ref节点的方式

import * as ReactDOM from 'react-dom';componentDidMount(){    console.log(`componentDidMount方法`);    var myp = ReactDOM.findDOMNode
(this.refs["myp"]); console.log(myp.innerText);}

五、直接获取DOM节点

1、传统的方式

let pDom = document.querySelector("p");pDom.addEventListener('click',()=>{    console.log('你点击了我');})

2、在ts中根据上面的方式可以获取pDom但是绑定事件的时候就是null

var myp = ReactDOM.findDOMNode
(this.refs["myp"]);myp.addEventListener('click',()=>{ console.log('你点击了我');})

.

转载于:https://www.cnblogs.com/crazycode2/p/10759674.html

你可能感兴趣的文章
WebLogic调用WebService提示Failed to localize、Failed to create WsdlDefinitionFeature
查看>>
020-Spring Boot 监控和度量
查看>>
JAVA中动态编译的简单使用
查看>>
java基础-BigDecimal类常用方法介绍
查看>>
[转]kafka介绍
查看>>
Google Guava新手教程
查看>>
tensorflow 实现逻辑回归——原以为TensorFlow不擅长做线性回归或者逻辑回归,原来是这么简单哇!...
查看>>
Spark 键值对RDD操作
查看>>
004-docker常用命令[二]-容器操作ps,top,attach,export
查看>>
Nancy简单实战之NancyMusicStore(四):实现购物车
查看>>
WIN10系统 截图或者某些程序时屏幕会自动放大怎么办
查看>>
[SQL] 请教一下 count里面有case when 一般情况下啥时候用
查看>>
山羊与汽车游戏的实验算法
查看>>
docker保存日志文件到本地
查看>>
【转载】springboot:如何优雅的使用mybatis
查看>>
java实现无序数组结构
查看>>
32位JDK和64位JDK
查看>>
IntelliJ IDEA 运行 Maven 项目
查看>>
Java常用的八种排序算法与代码实现
查看>>
nginx简单代理配置
查看>>