博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
与JavaScript恋爱之React(二)
阅读量:6143 次
发布时间:2019-06-21

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

一个例子:

class ProductCategoryRow extends React.Component {    render() {        return ({this.props.category});    }}class ProductRow extends React.Component {    render() {        var name = this.props.product.stocked ?            this.props.product.name :                    {this.props.product.name}      ;        return (                            {name}                {this.props.product.price}                    );    }}class ProductTable extends React.Component {    render() {        var rows = [];        var lastCategory = null;        this.props.products.forEach((product) => {            if (product.name.indexOf(this.props.filterText) === -1 || (!product.stocked && this.props.inStockOnly)) {                return;            }            if (product.category !== lastCategory) {                rows.push(
); } rows.push(
); lastCategory = product.category; }); return (
{rows}
Name Price
); }}class SearchBar extends React.Component { constructor(props) { super(props); this.handleChange = this.handleChange.bind(this); } handleChange() { this.props.onUserInput( this.filterTextInput.value, this.inStockOnlyInput.checked ); } render() { return (
this.filterTextInput = input} onChange={this.handleChange} />

this.inStockOnlyInput = input} onChange={this.handleChange} /> {' '} Only show products in stock

); }}class FilterableProductTable extends React.Component { constructor(props) { super(props); this.state = { filterText: '', inStockOnly: false }; this.handleUserInput = this.handleUserInput.bind(this); } handleUserInput(filterText, inStockOnly) { this.setState({ filterText: filterText, inStockOnly: inStockOnly }); } render() { return (
); }}var PRODUCTS = [ {category: 'Sporting Goods', price: '$49.99', stocked: true, name: 'Football'}, {category: 'Sporting Goods', price: '$9.99', stocked: true, name: 'Baseball'}, {category: 'Sporting Goods', price: '$29.99', stocked: false, name: 'Basketball'}, {category: 'Electronics', price: '$99.99', stocked: true, name: 'iPod Touch'}, {category: 'Electronics', price: '$399.99', stocked: false, name: 'iPhone 5'}, {category: 'Electronics', price: '$199.99', stocked: true, name: 'Nexus 7'}];ReactDOM.render(
, document.getElementById('main_center'));

转载地址:http://aijya.baihongyu.com/

你可能感兴趣的文章
秘籍:程序猿该如何实力撩妹
查看>>
网络编程socket基本API详解
查看>>
API接口设计 OAuth2.0认证
查看>>
Mysql5.6的1755错误解决办法
查看>>
在命令行中运行“mvn compile”因为中文报错
查看>>
Docker的技术不再局限于测试和开发
查看>>
技术干货:工欲善其事,必先利其器 阿里云数据库系列谈之一
查看>>
禁用ViewState
查看>>
深入理解Java HashMap实现原理
查看>>
阿里云备案获取服务号
查看>>
深入理解Python中的__builtin__和__builtins__
查看>>
YII AJAX registerScript
查看>>
ARC forbids explicit message send of 'retainCount'
查看>>
redis单机安装
查看>>
golang内存分配
查看>>
手把手教你----使用Nuget管理自己的项目库
查看>>
trubleshoting方式浅谈
查看>>
编目DB2数据库(原创)
查看>>
企业开发中选择logback而不是log4j的理由
查看>>
信息抽取的五个层次
查看>>