博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React结合webpack配置(2)
阅读量:6316 次
发布时间:2019-06-22

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

接React结合webpack配置!

制作一个简单的表格

TodoApp.js里的代码

import React from 'react';import TodoList from './TodoList';import TodoForm from './TodoForm';class TodoApp extends React.Component{constructor(props){    super(props);
this.ids=1;    this.state={            todos:[]    };        this.addItem=this.addItem.bind(this);    this.deleteItem=this.deleteItem.bind(this);    this.okItem=this.okItem.bind(this);
}okItem(id){    this.state.todos.map(item=>{        if(item.id==id){             item.done=1;        }        return item;    });    this.setState({        todos:this.state.todos    });}deleteItem(id){    let newtodos=this.state.todos.filter((item)=>{        return !(item.id==id)    });      this.setState({        todos:newtodos    });}addItem(value){   this.state.todos.unshift(        {            id:this.ids++,            text:value,            time:(new Date()).toLocaleString(),            done:0        }    )    this.setState({        todos:this.state.todos    });}render(){    return (
  • 下面的代码是表格最基本的排版内容: 可以参考网站:

ToDo 学习学习


); } }export default TodoApp;
  • 使用bootstrap先配置文件

  • cnpm file-loader url url-loader --save-dev

  • 再webpack.config.js文件里添加

    { test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: "file-loader" },{ test: /\.(woff|woff2)$/, loader:"url-loader?prefix=font/&limit=5000" },{ test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/, loader: "url-loader?limit=10000&mimetype=application/octet-stream" },{ test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, loader: "url-loader?limit=10000&mimetype=image/svg+xml" }

index.js

import React from 'react';import ReactDOM from 'react-dom'; import TodoAPP from './components/TodoAPP';//引用文件import './lib/bootstrap/css/bootstrap.min.css';ReactDOM.render(
,document.getElementById("app"));

TodoForm.js

import React from 'react';
class TodoForm extends React.Component{   tijiao(event){        event.preventDefault();    }add(event){        if(event.type=="keyup"&&event.keyCode!=13){        return false;    }    let txt=this.refs.txt.value;    if(txt=="") return false;        this.props.addItem(txt);
this.refs.txt.value="";}render(){    return(     
); }}export default TodoForm;

TodoItem.js

import React from 'react';class TodoItem extends React.Component{delete(){    this.props.deleteItem(this.props.data.id);}complete(){   console.log(this);    this.props.okItem(this.props.data.id);}render(){
let {text,time,done,id}=this.props.data;    return (          {text}       {time}       {done==0?"未完成":"完成"}                  删除                                            完成                          );}}export default TodoItem;

TodoList.js

import React from 'react';import TodoItem from './TodoItem';class TodoList extends React.Component{    render(){    let todos=this.props.data;       let todoItems=todos.map(item=>{        return 
}); /*let todoItems=[
,
,
,
,
,
];*/
return (        
{todoItems}
内容 时间 状态 操作
);}}export default TodoList;
这就是一个简单表格的完整代码,接下来看下效果图

图片描述

这是我最新的项目目录

图片描述

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

你可能感兴趣的文章
读书笔记《乌合之众》
查看>>
Hadoop日记Day1---Hadoop介绍
查看>>
centos7 yum安装jdk
查看>>
zzzzw_在线考试系统①准备篇
查看>>
剑指offer第二版-1.赋值运算符函数
查看>>
Android学习笔记——文件路径(/mnt/sdcard/...)、Uri(content://media/external/...)学习
查看>>
Echart:前端很好的数据图表展现工具+demo
查看>>
Linux VNC黑屏(转)
查看>>
Java反射简介
查看>>
day8--socket网络编程进阶
查看>>
node mysql模块写入中文字符时的乱码问题
查看>>
分析Ajax爬取今日头条街拍美图
查看>>
内存分布简视图
查看>>
如何学习虚拟现实技术vr? vr初级入门教程开始
查看>>
第4 章序列的应用
查看>>
初识闭包
查看>>
hdu1874畅通工程续
查看>>
rails 字符串 转化为 html
查看>>
AOP动态代理
查看>>
Yii2.0 下的 load() 方法的使用
查看>>