react.js 各种小测试笔记

首先看一个 基础html  至于其中的 js 问价大家去官网下载就好了。

<html>
<head>
<script src="../build/react.js"></script>
<script src="../build/react-dom.js"></script>
<script src="../build/browser.min.js"></script>
</head>
<body>
<div id="test"></div>
<script type="text/babel">

</script>
</body>
</html>

1在input框中输入值点击按钮获取其中的值在console.log中打印。

var TestRef = React.createClass({
            handleClick : function(){
                console.log(this.refs.Inputref.value);
            },
            render:function(){
                return (<div>
                <input type="text" ref="Inputref"/>
                <input type="button" value="TEXT" onClick={this.handleClick}/>
            </div>);

            }
        });

        ReactDOM.render(
            <TestRef/>,
             document.getElementById(‘test‘)
        );

2

//2 组建通讯 属性的用法
/**
* 当输入框的值改变的时候上面hello后面的值也发生改变
* 当Test1 组建创建 执行getInitialState(这个方法只运行一次 在创建组建的时候)方法 设置状态 name 的默认值为空
* 然后执行render 方法 渲染 此时调用Test组建 由于组建Test中name 属性的值是空 所以页面第一次会显示 hello word
* 当用户在输入框中输入数据的时候 出发 onChange 执行handleChange 方法 这个方法中
* setState 更新name 的状态为输入框的值。此时在组建Test 中的属性name 的值发生改变 所以会随之变化
*/

var Test =React.createClass({
        render:function(){
            return <div>hello,{this.props.name ? this.props.name :‘word!‘}!</div>;
        }
    });
    var Test1 = React.createClass({
        getInitialState:function(){
            return {name:‘‘};
        },
        handleChange:function(event){
            this.setState({name:event.target.value})
        },
        render:function(){
            return(
                    <div>
                        <Test name={this.state.name}/>
                        <input type="text" onChange={this.handleChange}/>
                    </div>
                );
        }
    });

    ReactDOM.render(
        <Test1/>,
         document.getElementById(‘test‘)
    );

3

// 组建通讯 状态 属性的用法
/**
* 状态,属性的用法
* 场景:点击提交的时候 获取textarea的值和select 选中的值。用console.log 打印出来
* 最后render 渲染的时候是Test1组建 所以先看Test1组建 创建的时候 定义了2个状态 names数组 selectvalue
* 渲染的时候 也加载了<Test>组建 给组建设置了一个属性selectName 值等于Test1中的状态 selectvalue
* 组建Test1中当下拉框的值改变的时候触发handleOnchange方法 设置状态 selectvalue的值为下拉框中选中的值。
* 在Test 组建中 创建的时候 设置状态 inputValue为空 渲染的时候 当输入框的值改变的时候出发handleONE方法
* 设置状态inputValue 的值为输入框的值。 当点击Submit的时候出发 handleTWO 方法 获取状态inputValue的值和属性selectName的值
*

    var Test =React.createClass({
        getInitialState:function(){
            return {inputValue:‘‘};
        },
        handleONE:function(event){
            this.setState({inputValue:event.target.value});
        },
        handleTWO:function(){
            console.log("textarea value is:"+this.state.inputValue+"----selectValue:"+this.props.selectName);
        },
        render:function(){
            return (
                <div>
                <textarea placeholder="please input string" onChange={this.handleONE}>
                </textarea>
                <input type="button" value="Submit" onClick={this.handleTWO}/>
                </div>
                );
        }
    });

    var Test1 = React.createClass({
        getInitialState:function(){
            return{
                names:[‘xiaoming‘,‘xiaowang‘,‘xiaohong‘],
                selectvalue:‘‘,
            }
        },
        handleOnchange:function(event){
            this.setState({selectvalue:event.target.value});
        },
        render:function(){
            var optionArr = [];
            for (var option in this.state.names) {
                optionArr.push(<option key={option} value={this.state.names[option]}>{this.state.names[option]}</option>);
            };
            return(
                    <div>
                    <select onChange={this.handleOnchange}>
                        {optionArr}
                    </select>
                    <Test selectName={this.state.selectvalue}/>
                    </div>
                );
        }

    });
    ReactDOM.render(
        <Test1/>,document.getElementById(‘test‘)
        );

*/

时间: 2024-10-06 21:08:20

react.js 各种小测试笔记的相关文章

js 模块化 小测试

$(function(){ var module1 = (function(){ var _count = 0; var m1 = function(){ alert('m1') }; var m2 = function(){             alert('m2'); }; var m3 = function(){ $('.logo').click(function(){                alert('js is my love');                    

Angular、React.js 和Node.js到底选谁?

为了工作,程序员选择正确的框架和库来构建应用程序是至关重要的,这也就是为什么Angular和React之间有着太多的争议.Node.js的出现,让这场战争变得更加复杂,虽然有选择权通常是一件很棒的事情,但在这种情况下,对于到底应该选择哪种框架,程序员之间并没有一致的意见,每个人都有不同的想法,并且听起来都相当合理. 为了让一切归于和谐,本文就来探究一下这三大框架各自的优缺点. 基础知识部分: 在我们深入研究这三种框架的具体细节之前,先来了解一些前情提要.yigouyul22.com xucaiz

react.js 测试

<html>    <head>        <title>hellow</title>        <script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.13.3/JSXTransformer.js"></script>        <script src="https://cdnjs.cloudflare.com/ajax/

[小问题笔记(一)] js关闭页面window.close() 无效,不弹提示直接关闭

window.close(); 单独写这句,各个浏览器效果都不一样.比如IE(不是所有版本)会弹提示: 点确定之后才会关闭.而有些浏览器压根就没反应. 需要让它不弹提示,直接关闭,在window.close();前加两句就可以. window.opener=null; window.open('','_self'); window.close(); 原因:传说是因为严肃的浏览器不让js肆意的关掉窗口,但是js自己打开的窗口自己可以关闭,这样写算“误导”一下它吗?╮(╯▽╰)╭ [小问题笔记(一)

React.js小书总结

(迁移自旧博客2017 08 27) 第一阶段 react的组件相当于MVC里面的View. react.js 将帮助我们将界面分成了各个独立的小块,每一个块就是组件,这些组件之间可以组合.嵌套,就成了我们的页面. react.js 不是一个框架,它只是一个库.它只提供 UI (view)层面的解决方案.在实际的项目当中,它并不能解决我们所有的问题,需要结合其它的库,例如 Redux.React-router 等来协助提供完整的解决方法. 组件化可以帮助我们解决前端结构的复用性问题,整个页面可以

React.js学习笔记(一):组件协同与mixin

组件协同: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>父子关系</title> </head> <body> <script src="react.js"></script> <script src="JSXTran

使用 React.js 的渐进式 Web 应用程序:第 1 部分 - 介绍

来自译者 markzhai:大家也知道最近 Web 越来越火了,如果你还以为 Web 就是 jQuery.Ajax.CSS 什么的,那你就 out 了.给大家几个链接看一看吧: https://shop.polymer-project.org/ https://housing.com/ https://www.flipkart.com/ https://react-hn.appspot.com/ https://mobile.twitter.com/ 部分可能需要自备梯子,另外建议在 Chrom

React.js 基础入门三 ---组件状态state

React 组件实例在渲染的时候创建.这些实例在接下来的渲染中被重复使用,可以在组件方法中通过 this 访问.唯一一种在 React 之外获取 React 组件实例句柄的方式就是保存React.render 的返回值.在其它组件内,可以使用 refs 得到相同的结果(后面会简单解释refs). 从上几章的学习,我们可以这么理解组件,学过php的Yii框架的都知道widget组件,react.js定义一个组件,通过在组件中定义各种'方法','属性'最后通过render来渲染这个组件. 其中<组建

react.js 之 create-react-app 命令行工具系统讲解

react.js 教程之 create-react-app 命令行工具系统讲解 快速开始 npm install -g create-react-app create-react-app my-app cd my-app/ npm start 通过http://localhost:3000/查看你的app 使用 npm run build 编译打包程序 npm test 文件修改后测试,这部分内容后面讲 更新到最新版本 创建react app的主要分为两个包,一个包是create-react-a