当前位置: 首页 > news >正文

山东住房和城乡建设厅网站首页站长工具权重

山东住房和城乡建设厅网站首页,站长工具权重,公司做网站的费用用途写什么,做三个月网站 广告收入TodoList主要是包含了CRUD功能,本地存储功能(loaclStorage)总结:全选按纽可以通过forEach循环来讲数据中的isCheck中的false删除实现就通过传递id,然后根据filter循环将符合条件的数据返回成数组,然后将返回…

TodoList主要是包含了CRUD功能,本地存储功能(loaclStorage)

总结:

  1. 全选按纽可以通过forEach循环来讲数据中的isCheck中的false

  1. 删除实现就通过传递id,然后根据filter循环将符合条件的数据返回成数组,然后将返回值赋给原数据

  1. 时间的获取可以通过dayjs插件来获取:

  1. 首先 npm install dayjs -s来安装插件

  1. 然后在组件中通过import dayjs from 'dayjs'来导入插件

  1. 最后通过dayjs(new Date).format('YY-MM-DD HH:MM')来获取时间

  1. 随机数的获取

 randomId(){return Number(Math.random().toString().substring(2,0)+Date.now()).toString(10)},
  1. 在CSS中有个知识点可以参考:将元素居中使用如下的办法:

position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);
  1. 获取input框的焦点:当我们点击添加按钮后,需要将光标放置到input框中,这时我们需要聚焦

  1. 首先在input框中添加ref属性

<input  type="text" ref="inputBox">

b. 然后在添加按钮中添加聚焦的方法

   const inputLenth = this.todoList.length - 1 console.log(inputLenth);this.$nextTick(()=>{this.$refs.inputBox[inputLenth].focus()})

在这段代码中需要注意的是我们要获取的是数组中最后一条数据,因为index下标从0开始,所以记着给length-1

  1. 本地存储则是通过localStorage.getItem和localStorage.setItem来实现

HTML代码:

<template><div class="todoListBox"><div class="header"><div class="header_left"><div>+</div><h2>Todo List</h2></div><div class="header_right"><button class="allBtn" @click="allSelect">全选</button><button class="addBtn" @click="addText">添加</button></div></div><div class="container"><div class="container_item" v-for="(item,index) in todoList" :key="item.id"><!-- 选中 --><div class="container_left" @click="selectText(item.id,index)"><span :style="item.isCheck?'opacity:1':'opacity:0'"></span></div><!-- 输入框 --><input type="text" v-model="item.content":disabled="item.isCheck":class="item.isCheck ? 'line-through': ''"@blur="handleInput"ref="inputBox"><!-- info --><div class="container_right"><!-- 时间 --><p>{{item.time}}</p><button @click="delText(item.id)">删除</button></div></div></div></div>
</template>

JS代码

<script>
import dayjs from 'dayjs'
export default {data(){return{todoList:[]}},created(){let newList = JSON.parse(window.localStorage.getItem('TodoList'))if(newList === null){this.todoList = [{id:this.randomId(),content:'请点击上方的添加按钮添加事件',isCheck:false,time:dayjs(new Date).format('YY-MM-DD HH:mm')}]}else{this.todoList = newList}},methods:{allSelect(){this.todoList.forEach(item=>{item.isCheck = !item.isCheck})this.storage()},addText(){this.todoList.unshift({id:this.randomId(),isCheck:false,content:'',time:dayjs(new Date).format('YY-MM-DD HH:mm')})const inputLenth = this.todoList.length - 1 console.log(inputLenth);this.$nextTick(()=>{this.$refs.inputBox[inputLenth].focus()})},delText(id){const result = this.todoList.filter(function(item){return item.id !=id})this.todoList = resultthis.storage()},//选中功能selectText(id,index){const doneItem = this.todoList.find(item=>item.id == id)doneItem.isCheck  = !doneItem.isCheckthis.storage()},//判断是否完成输入handleInput(){this.storage()},//生成随机IdrandomId(){return Number(Math.random().toString().substring(2,0)+Date.now()).toString(10)},storage(){window.localStorage.setItem('TodoList',JSON.stringify(this.todoList))}},}
</script>

CSS代码

<style lang="scss" scoped>
button{padding: 5px 10px;border: none;border-radius: 5px;color: #fff;margin-left: 10px;}.todoListBox{width: 800px;height: 600px;background-color: #3C3E4F;border-radius: 10px;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);padding: 20px;box-sizing: border-box;color: white;.header{display: flex;flex-direction: row;justify-content: space-between;align-items: center;.header_left{display: flex;flex-direction: row;justify-content: space-between;align-items: center;div{width: 50px;height: 50px;line-height: 50px;border-radius:50% ;background-color: #9999E6;font-size: 30px;text-align: center;margin-right: 15px;}}.header_right{.allBtn{background: #c43F38;}.addBtn{background:#70B870 ;}}}.container{margin-top: 20px;height: 450px;overflow-y: scroll;.container_item{width: 100%;display: flex;justify-content: space-between;align-items: center;background-color: #686F7D;border-radius:8px ;padding:10px 20px;box-sizing: border-box;margin-top:20px ;.container_left{width: 30px;height: 30px;border: 1px solid #ccc;border-radius: 50%;position: relative;span{display: inline-block;width: 25px;height: 25px;background-color: #9999E6;border-radius: 50%;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}}.line-through{color: rgba(255,255,255,0.5);text-decoration: line-through rgba(142, 3, 3, 0.841);}.container_right{display: flex;align-items: center;button{background-color: red;}}input[type='text']{flex: 1;margin: 0 10px;outline: none;// 背景设置透明background: transparent;border: none;border-bottom: 1px solid #ccc;padding: 5px 10px;color: #ccc;}}}}
</style>

http://www.fp688.cn/news/164496.html

相关文章:

  • 深圳网站做的好的公司名称公众号推广合作平台
  • 一个人可以做几个网站seo优化常识
  • 长春网站建设哪家好怎样优化标题关键词
  • 常州平台网站建设百度知道合伙人官网
  • wordpress 登陆白屏上海seo培训中心
  • 动态网站开发毕业论文网盘搜索神器
  • 网站底部分享怎么做seoheuni
  • 做网站如何将一张图片直接变体做谷歌推广比较好的公司
  • 贵州专业网站建设昆明seo关键字推广
  • 苏周到app开发公司seo自动优化工具
  • wordpress手机版切换网站优化公司收费
  • 保定专业网站建设网站seo外包公司
  • 郑州做网站齿轮seo商学院
  • 通辽做家教的网站东莞网站制作十年乐云seo
  • wordpress建小说站收费优化排名
  • 成都网站建设公司汇总免费推广软件
  • 塘下做网站怎么找到当地的微信推广
  • 设计平面广告seo点击软件手机
  • 求推荐做ppt的网站如何制作微信小程序
  • 个人软件制作网站源码二级域名网站查询入口
  • 丹阳网站怎么做seo宁波网站建设的公司
  • 福建住房和城乡建设部网站宁波网络推广团队
  • 本地创建wordpressseo技术外包 乐云践新专家
  • 上线了做网站要钱推广方法
  • 通辽做网站的公司seo诊断
  • 河北做网站的公司哪里可以建网站
  • 银川专业做网站如何拥有自己的网站
  • 网站建设与运营财务报表怎么给公司做网站
  • 西宁做网站公司电话百度网站怎么提升排名
  • 海宁高端网站设计武汉seo网站优化技巧