全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

利用vue写todolist单页应用

网上有很多关于vue的todolist小程序。大多是利用vue-cli脚手架工具开发的,这个官网的文档也不支持新手从单文件开始学习。所以用大家熟悉的开发方式写了这个todolist,希望和大家一起学习。

1、vue是啥?
Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架。简单说是一个模板引擎,做过后端的应该很清楚,以前靠服务器端渲染的dom,放在浏览器端端渲染,vue拿到数据渲染成dom.当然vue不仅仅是用来干这个的,数据驱动,数据双向绑定,赋予了用户很好的体验,以及快速的开发,应用的项目的益于维护等。。

2、下面开始代码吧,提前引入vue.js,以及bootstrap。由于没采用vue单文件开发。所以只有一个html文件.

3、为了方便你可以使用cdn来引入你需要的文件。demo使用了localstorage来存放数据。所以你必须开启web端口来浏览。未了方便你可以使用webstorm来开发。否则你直接打开静态页是不能存取数据的。当然这些数据你可以换成从数据库来处理

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>vue版todolist</title>
  <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css">
  <script src="src/vue.js"></script>
</head>
<style>
  .isFinish {
    background-color: #d58512 !important;
  }

  .itemcount {
    display: block;
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    border-radius: 10px;
    float: left;
    background-color: #d9edf7;
  }
</style>
<body>
<div class="container text-center" id="app">

  <h2>{{title}}</h2>
  <div class="row">
    <div class="col-md-7">
      <form class="form-horizontal" role="form">
        <div class="form-group">
          <label for="toitem">添加任务事项</label>
          <input class="form-control" type="text" id="toitem" v-model="newitem" @keyup.enter="addItem()">
        </div>
        <!--  <div class="form-group text-left">
            <button class="btn btn-primary btn-sm">确认添加</button>
          </div>-->
        <div class="list-group text-left form-group" style="margin-top: 2em;">
          <a href="#" class="list-group-item active text-left">
            任务清单:
          </a>

          <a href="#" v-for="item in items" class="list-group-item" v-on:click="toogleFinsih(item)">
            <span class="itemcount">{{item.id}}</span>
            {{item.lable}}
            <span class="badge" v-bind:class="{isFinish:item.isFinish}">√</span>
          </a>

        </div>
      </form>
    </div>
    <div class="col-md-5">
      <div class="panel panel-default">
        <div class="panel-heading">任务计划:</div>
        <div class="panel-body">
          请在一周内完成这些计划!
        </div>
        <div class="panel-footer text-right">
          <button class="btn btn-info btn-sm" @click="clearItem">清空任务计划</button>
        </div>
      </div>
    </div>
  </div>
</div>
<script>
  //该网站的localStorage的键值,用于存放数据
  var todoList = 'todolist';
  //对localStorage的封装
  var lsp = (function () {
    return ({
      add: function (dataval) {
        //添加数据,键为todolist
        localStorage.setItem(todoList, JSON.stringify(dataval));
      },
      get: function () {
        //读取键为todolist的数据
        return JSON.parse(localStorage.getItem(todoList));
      },
      remove: function () {
        //移除该站点下键为todolist的数据
        localStorage.removeItem(todoList);
      },
      clear: function () {
        //清空该站点下的所有localStorage的数据
        localStorage.clear();
      }
    });
  })();
  var app = new Vue({
    el: '#app',
    data: {
      title: '任务清单demo',
      items: lsp.get() || [],//读取数据。如果没有数据赋值为数组[]
      newitem: '' //要添加的数据
    },
    methods: {
      addItem: function () {
        var that = this;
        this.items.push({
          id: that.items.length + 1,
          lable: that.newitem,
          isFinish: false
        });
        lsp.add(this.items);
        this.newitem = '';
      },
      toogleFinsih: function (item) {
        item.isFinish = !item.isFinish;
      },
      clearItem: function () {

        this.items = [];

      }
    }
  })
</script>
</body>

</html>

github:demo

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# vue  # todolist  # 单页应用  # Vue中父子组件通讯之todolist组件功能开发  # Vue从TodoList中学父子组件通信  # 详解Vue的computed(计算属性)使用实例之TodoList  # vue实现ToDoList简单实例  # vue组件编写之todolist组件实例详解  # vue2的todolist入门小项目的详细解析  # 使用Vue完成一个简单的todolist的方法  # Vue.js实现简单ToDoList 前期准备(一)  # vue实现留言板todolist功能  # 使用Vue父子组件通信实现todolist的功能示例代码  # 你可以  # 清空  # 也不  # 很好  # 放在  # 有很多  # 请在  # 如果没有  # 做过  # 写了  # 只有一个  # 很清楚  # 大家一起  # 你必须  # 端端  # 类似于  # 绑定  # 官网  # 值为  # 大家多多 


相关文章: 建站之星伪静态规则如何设置?  如何正确选择百度移动适配建站域名?  如何通过商城自助建站源码实现零基础高效建站?  为什么Go需要go mod文件_Go go mod文件作用说明  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  如何在IIS中新建站点并解决端口绑定冲突?  香港服务器部署网站为何提示未备案?  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  北京建设网站制作公司,北京古代建筑博物馆预约官网?  建站主机服务器选购指南:轻量应用与VPS配置解析  一键网站制作软件,义乌购一件代发流程?  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  昆明高端网站制作公司,昆明公租房申请网上登录入口?  一键制作网站软件下载安装,一键自动采集网页文档制作步骤?  购物网站制作公司有哪些,哪个购物网站比较好?  宝塔建站后网页无法访问如何解决?  教学论文网站制作软件有哪些,写论文用什么软件 ?  建站主机选哪家性价比最高?  如何选择最佳自助建站系统?快速指南解析优劣  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  微信推文制作网站有哪些,怎么做微信推文,急?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  Java解压缩zip - 解压缩多个文件或文件夹实例  建站主机助手选型指南:2025年热门推荐与高效部署技巧  网站制作模板下载什么软件,ppt模板免费下载网站?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  python的本地网站制作,如何创建本地站点?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  手机网站制作与建设方案,手机网站如何建设?  建站主机是否等同于虚拟主机?  如何基于云服务器快速搭建网站及云盘系统?  建站之星24小时客服电话如何获取?  黑客入侵网站服务器的常见手法有哪些?  如何在IIS服务器上快速部署高效网站?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  招商网站制作流程,网站招商广告语?  GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?  如何正确下载安装西数主机建站助手?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  上海网站制作开发公司,上海买房比较好的网站有哪些?  h5在线制作网站电脑版下载,h5网页制作软件?  黑客如何通过漏洞一步步攻陷网站服务器?    安徽网站建设与外贸建站服务专业定制方案  建站主机SSH密钥生成步骤及常见问题解答?  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。