todolist案例---静态组件

简介: todolist案例---静态组件

1.页面组成表示



2.定义好Header,Footer,Item,List组件,并且要写好组件的引入等等工作

举例一个Item组件

A.index.jsx文件


import React, { Component } from 'react'
import "./index.css"
export default class Item extends Component {
  render() {
    return (
      <ul className="todo-main">
      <li>
        <label>
          <input type="checkbox"/>
          <span>xxxxx</span>
        </label>
        <button className="btn btn-danger" style={{display:'none'}}>删除</button>
      </li>
      <li>
        <label>
          <input type="checkbox"/>
          <span>yyyy</span>
        </label>
        <button className="btn btn-danger" style={{display:'none'}}>删除</button>
      </li>
    </ul>
    )
  }
}

B.index.css文件

/*item*/
li {
    list-style: none;
    height: 36px;
    line-height: 36px;
    padding: 0 5px;
    border-bottom: 1px solid #ddd;
  }
  li label {
    float: left;
    cursor: pointer;
  }
  li label li input {
    vertical-align: middle;
    margin-right: 6px;
    position: relative;
    top: -1px;
  }
  li button {
    float: right;
    display: none;
    margin-top: 3px;
  }
  li:before {
    content: initial;
  }
  li:last-child {
    border-bottom: none;
  }

3.然后书写App.jsx文件

// import React from 'react'
// className App extends React.Component{
//     render(){
//         return(<p>娟宝我爱你</p>)
//     }
// }
// export default App
import React,{Component} from 'react'
import "./App.css"
import Header from "./Component/Header"
import Footer from "./Component/Footer"
import List from "./Component/List"
export default class App extends Component{
    render(){
        return(
    <div className="todo-container">
    <div className="todo-wrap">
      <Header/>
      <Footer/>
      <List/>
    </div>
  </div>)
    }
}

同时也要引入index.css文件

/*base*/
body {
  background: #fff;
}
.btn {
  display: inline-block;
  padding: 4px 12px;
  margin-bottom: 0;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  border-radius: 4px;
}
.btn-danger {
  color: #fff;
  background-color: #da4f49;
  border: 1px solid #bd362f;
}
.btn-danger:hover {
  color: #fff;
  background-color: #bd362f;
}
.btn:focus {
  outline: none;
}
.todo-container {
  width: 600px;
  margin: 0 auto;
}
.todo-container .todo-wrap {
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
}


相关文章
|
前端开发 API
vue3+TS实战中Dialog弹窗封装复用的技巧
Dialog弹窗在后台管理系统中是使用频率非常高的组件,添加和修改数据基本都会用到,本文就讲讲在vue3和ts的项目中如何封装Dialog组件,实现代码高复用
2949 0
vue3+TS实战中Dialog弹窗封装复用的技巧
|
2月前
|
缓存 JavaScript 前端开发
vue2基础组件通信案例练习:把案例Todo-list改写成本地缓存
vue2基础组件通信案例练习:把案例Todo-list改写成本地缓存
19 1
|
2月前
|
缓存 JavaScript
vue2基础组件通信案例练习:把案例Todo-list改成使用动画与过度
vue2基础组件通信案例练习:把案例Todo-list改成使用动画与过度
16 2
|
2月前
|
缓存 JavaScript
vue2基础组件通信案例练习:把案例Todo-list改成使用自定义事件
vue2基础组件通信案例练习:把案例Todo-list改成使用自定义事件
18 2
|
2月前
|
缓存 JavaScript 前端开发
vue2基础组件通信案例练习:把案例Todo-list新增编辑按钮
vue2基础组件通信案例练习:把案例Todo-list新增编辑按钮
26 4
|
2月前
|
监控 JavaScript 开发者
在 Vue 中,子组件为何不可以修改父组件传递的 Prop,如果修改了,Vue 是如何监控到属性的修改并给出警告的
在 Vue 中,子组件不能直接修改父组件传递的 Prop,以确保数据流的单向性和可预测性。如果子组件尝试修改 Prop,Vue 会通过响应式系统检测到这一变化,并在控制台发出警告,提示开发者避免这种操作。
|
5月前
|
开发框架 前端开发 JavaScript
循序渐进VUE+Element 前端应用开发(22)--- 简化main.js处理代码,抽取过滤器、全局界面函数、组件注册等处理逻辑到不同的文件中
循序渐进VUE+Element 前端应用开发(22)--- 简化main.js处理代码,抽取过滤器、全局界面函数、组件注册等处理逻辑到不同的文件中
|
6月前
|
JavaScript API
【Vue3的组合式API】超详细教程,含computed、watch、组件通信、模版引用......
【Vue3的组合式API】超详细教程,含computed、watch、组件通信、模版引用......
|
存储 网络架构
Vue3-admin-element框架学习笔记----5(最终篇--动态路由)
Vue3-admin-element框架学习笔记----5(最终篇--动态路由)
174 0
|
JavaScript 网络架构
vue3动态路由的概念以及如何配置---vue3学习笔记
vue3动态路由的概念以及如何配置---vue3学习笔记
619 0

热门文章

最新文章