React--基础学习混搭
最近学习一下React,通过 阮一峰《React 入门实例教程》 、React 入门教程、菜鸟教程--React 这三个学习基础使用,接下来看慕课网的三个教学视频。
React是什么我也不能说的很透彻,但学习时候觉得就是能摆脱不得复用的陋习,要什么就写什么组件。
以下内容包含 利用Jquery读取ajax,利用map遍历,同时用到了父子组件,组件生命周期,state,props。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<script src="http://static.runoob.com/assets/react/react-0.14.7/build/react.js"></script>
<script src="http://static.runoob.com/assets/react/react-0.14.7/build/react-dom.js"></script>
<script src="http://static.runoob.com/assets/react/browser.min.js"></script>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
</head>
<body>
<p>根据ajax获得一个JSON对象 遍历出信息,同时定义一个按钮子组件,通过props.id传递,并将ID打印出来 </p>
<div id="example"></div>
<script type="text/babel">
//子组件 按钮
var ButtonDel = React.createClass({
handleClick : function(){
console.log(this.props.id)
},
render: function(){
return (
<button id={this.props.id} onClick={this.handleClick}>del me</button>//读取父组件上的id属性
)
}
}); var UserGist = React.createClass({
//定义初始化state 我当做声明来用
getInitialState : function(){
return{
config :[]
}
},
//组件第一次渲染调用后,使用ajax
componentDidMount: function() {
var config = this.state.config;
$.get(this.props.source, function(result) {
//拿到返回的值之后设置state 把整个json给config
this.setState({
config : result
});
}.bind(this));
}, render: function() {
var config = this.state.config;
var items = config.map(function(item){
return (
<li>
{ item.owner.login} link {item.html_url}
<ButtonDel id={item.id}/> //这个是按钮子组件
</li>
);
},this); //这里的this是做什么用的呢?
// <ButtonDel id={item.id} delClick={this.handleClick} > 如果上面的ButtonDel出现this.handleClick 需要上面的this
return (
<div>
{items}
</div>
);
}
});
//定义组件
ReactDOM.render(
<UserGist source="https://api.github.com/users/octocat/gists"/>,
document.getElementById('example')
);
</script>
</body>
</html>
上面的结果就是点击console.log button上面的id,再进行别的操作。
以上只是小小整合,期待能更加深入进入学习.....待续
React--基础学习混搭的更多相关文章
- react基础学习和react服务端渲染框架next.js踩坑
说明 React作为Facebook 内部开发 Instagram 的项目中,是一个用来构建用户界面的优秀 JS 库,于 2013 年 5 月开源.作为前端的三大框架之一,React的应用可以说是非常 ...
- react基础学习
什么是react:React(有时称为React.js 或ReactJS)是一个为数据提供渲染HTML视图的开源JavaScript库; 其特点: 声明式设计:采用声明范式,可以轻松描述应用高效:通过 ...
- react基础学习 一
1. 搭建环境 安装react脚手架 >npm install create-react-app -g 创建文件 >create-react-app 项目名称 启动 ...
- react基础学习 三
获取原生的DOM 注意:获取DOM是要在组件渲染之后才能被获取,所以在constructor里面获取不到原生的DOM 方法一:回调函数 推荐 方法二:createRef() 16版本,推荐 方 ...
- react基础学习 二——生命周期
生命周期mount: mounting装载创建 update更新 unmounting卸载 错误捕获 注意点:生命周期函数的 作用,什么之后用 只有类式组件有生命周期,函数式组件没有生命周期 moun ...
- AntDesign(React)学习-3 React基础
前面项目已经建起来了,但是没有React基础怎么办,从头学习,这个项目使用的是基于React16.X版本的几种技术集成,那么我们就从网上找一些相关的资料进行研究,我的习惯是用到哪学到哪. 一.先看一些 ...
- react基础(1)
在 react入门系列 里面,介绍了一些react的基础知识,在react基础部分,会结合手脚架工具进行更多的总结. 关于webpack我在这里就不讲解了,有需要的小伙伴可以自己去百度一下学习资料,我 ...
- React 基础入门,基础知识介绍
React不管在demo渲染还是UI上,都是十分方便,本人菜鸟试试学习一下,结合阮一峰老师的文章,写下一点关于自己的学习react的学习笔记,有地方不对的地方,希望各位大牛评论指出: PS:代码包下载 ...
- 【优质】React的学习资源
React的学习资源 github 地址: https://github.com/LeuisKen/react-collection https://github.com/reactnativecn/ ...
- react native学习资料
一:基础学习: react-native中文文档(react native中文网,人工翻译,官网完全同步)http://react-native.cn/docs/getting-started.htm ...
随机推荐
- vue.js的特点-1
1. Vue.js是数据驱动的,无需手动操作DOM. 它通过一些特殊的HTML语法,将DOM和数据绑定起来.一旦你创建了绑定,DOM将和数据保持同步,每当变更了数据,DOM也会相应的更新. 2. MV ...
- 从pthread 到QThread
该文出自:http://www.civilnet.cn/bbs/topicno/78430 使用线程技术进行应用编程的意义在gemfield的文章<从进程到线程>中已经介绍过了,我们就直奔 ...
- BZOJ4327 JSOI2012玄武密码(AC自动机)
当然可以在SA上二分答案,但看起来会被卡log.考虑对模板串建出AC自动机,用母串在上面跑,标记上所有能到达的点.注意到达某个点时需要标记所有其通过fail指针可以走到的点,如果遇到一个标记过的点就可 ...
- mplab c30 注册方法
http://blog.csdn.net/q553716434/article/details/7459036 关键文件是: C:\Program Files\Microchip\MPLAB C30\ ...
- 洛谷P4588 [TJOI2018]数学计算 【线段树】
题目链接 洛谷P4588 题解 用线段树维护即可 #include<algorithm> #include<iostream> #include<cstring> ...
- 洛谷 P1502 窗口的星星 解题报告
P1502 窗口的星星 题目背景 小卡买到了一套新房子,他十分的高兴,在房间里转来转去. 题目描述 晚上,小卡从阳台望出去,"哇~~~~好多星星啊",但他还没给其他房间设一个窗户, ...
- [AHOI2005]航线规划——LCT维护边双联通分量
因为只能支持加入一个边维护边双,所以时光倒流 维护好边双,每次就是提取出(x,y)的链,答案就是链长度-1 具体维护边双的话, void access(int x){ for(reg y=0;x;y= ...
- boost 文件操作
void testFileSystem() { boost::filesystem::path path("/test/test1"); //初始化 boost::filesyst ...
- POJ1087:A Plug for UNIX(最大流)
A Plug for UNIX 题目链接:https://vjudge.net/problem/POJ-1087 Description: You are in charge of setting u ...
- Linux Top 命令参数解析
转载自:http://www.jb51.net/LINUXjishu/34604.html TOP是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户 ...