美文网首页
vue的简单用法

vue的简单用法

作者: 6cc89d7ec09f | 来源:发表于2018-04-05 13:32 被阅读9次

设计

image.png

1、输入框输入待做事件,回车之后展示在下面的列表里
2、已经完成的待做事件,下面会出现下划线。没有做完的事件则不会出现
3、点击未完成待做事件,则表示已经完成了这个事情,则下面会出现下划线。点击已完成事件,下划线消失,表示这个事情没有完成
4、刷新页面,这些待做的事情列表还能继续展现,而不能消失,这意味着需要把信息存储到浏览器上本地上

@keyup.enter 表示绑定回车事件
v-for:遍历
v-on:click:点击事件
:class:绑定css样式
v-model:将input值和vue双向绑定。即input值名为message

App.vue

<template>
  <div id="app">
    <img src="./assets/logo.png">
    <p>{{msg}}</p>
    <input @keyup.enter="addTask" v-model="message">
    <ol>
      <li v-for='item in list' :class="{finish:item.isfinish}" v-on:click="doThis(item)" >
        {{item.label}}
      </li>
    </ol>
  </div>
</template>

<script>
import Store from "./store" //引入store。js文件

export default {
  data:function(){
    return{
      msg:'this is my todo list',
      list:Store.fetch(),
      message:""
    }
  },
  watch:{ //监听list值发生变化的事件
    list:{
      handler: function (list) {
        Store.save(list);
      },
      deep: true  //为true,isfinish变化也能被触发该事件
    }
  },
  methods: {
    doThis:function(item){
      //点击事件,改变item的isfinish
      item.isfinish = !item.isfinish
    },
    addTask:function(){ //回车事件,将输入框中的内容放入lists集合中,再清空输入框
      this.list.push({label:this.message,isfinish:false})
      this.message = ""
    }
  }
}
</script>

<style>
  .finish{
    text-decoration:underline
  }
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

Store.js

const STORAGE_KEY = 'todos-vuejs'
export default { //相当于输出匿名对象
    fetch:function (){
        //返回存储到客户端的localStorage的数据,若没有则返回[]
        return JSON.parse(window.localStorage.getItem(STORAGE_KEY  || '[]') ) 
    },
    save:function (items){
        //存储内容到localStorage,并把数据转成json格式的string类型
        window.localStorage.setItem(STORAGE_KEY,JSON.stringify(items))
    }
}

相关文章

  • 手写VueRouter简单实现hash路由

    vue-router用法 首先简单看看vue-router简单用法: 从上面代码可以看到,在route.js中导出...

  • [Vuejs 学习笔记] 一. 模板与数据双向绑定

    官方文档最简单的 Vue 框架用法, 在 HTML 中集成 Vue

  • vue学习笔记(2)——基础设置

    githubvue学习笔记(1)主要介绍vue项目的创建vue学习笔记(3)主要介绍vue的router简单用法对...

  • vue的简单用法

    设计 1、输入框输入待做事件,回车之后展示在下面的列表里2、已经完成的待做事件,下面会出现下划线。没有做完的事件则...

  • vue-介绍

    说明 此篇文章,主要说明的是vue的简单运行,不依赖node.js,更简单的学习使用vue的用法,因此本文所有代码...

  • vue之数据拉取

    因为vue-resource已不再维护,vue官方也推荐使用 axios ,所以在此坐下简单记录和用法. axio...

  • 搭建基于webpack的vue项目

    简单搭建基于webpack环境下的Vue项目,在此过程中熟悉webpack以及vue的简单用法,按照步骤一步一步进...

  • 2019-11-23

    vue虚拟DOM是什么?vue的虚拟DOM的用法 1、为什么需要虚拟DOM 前面我们从零开始写了一个简单的类Vue...

  • Vue核心知识-Vue的组件之组件的继承

    用法 Vue.extend( options ) 参数: {Object} options用法: 使用基础 Vue...

  • 初识 Vue

    vue 是什么 vue 基础用法

网友评论

      本文标题:vue的简单用法

      本文链接:https://www.haomeiwen.com/subject/wyorhftx.html