ホームページ >ウェブフロントエンド >jsチュートリアル >vue.js todolistの実装方法
今回私が紹介するのは、vue.js todolist の実装方法です。まず、vue.js と HTML5 ローカル ストレージの基本的な知識を知る必要があります。この記事では、適切な分析を提供します。
store.js コード
const STORAGE_KEY = 'todos-vue.js' export default{ fetch(){ return JSON.parse(window.localStorage.getItem(STORAGE_KEY) || '[]') }, save(items){ window.localStorage.setItem(STORAGE_KEY,JSON.stringify(items)); } }
App.vue code
<template> <p id="app"> <h1 v-text="title"></h1> <input v-model="newItem" v-on:keyup.enter="addNew"/> <ul> <li v-for="item in items" v-bind:class="{finished:item.isFinished}" v-on:click='toogleFinish(item)'> {{item.label}} </li> </ul> </p> </template> <script> import Store from './store' export default { name: 'app', data () { return { title: 'this is a todo list', items:Store.fetch(), newItem:'' } }, watch:{ items:{ handler(items){ //经过变化的数组会作为第一个参数传入 Store.save(items) console.log(Store.fetch()); }, deep:true //深度复制 } }, methods:{ toogleFinish(item){ item.isFinished = !item.isFinished }, addNew(){ this.items.push({ label:this.newItem, isFinished:false, }) this.newItem = '' } } } </script> <style> #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; } .finished{ text-decoration: underline; } </style>
上記の紹介を読んだ後は、この方法を習得したと思います。さらに興味深い内容については、php の他の関連記事に注目してください。中国語のサイトです!
関連書籍:
js を使用して、模倣ウィンドウ システムのカレンダー効果を実現する方法
JS を使用してクリックしてログイン中の個人メールにジャンプする方法
以上がvue.js todolistの実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。