为了账号安全,请及时绑定邮箱和手机立即绑定

我的之前都是好好的,加上store.js之后就会报错,这是为什么啊

http://img1.sycdn.imooc.com//595a05ff0001dc2c14380400.jpg

为什么我跟老师写的一样,我的就报错啊

正在回答

2 回答

截图看不清

0 回复 有任何疑惑可以回复我~
#1

DOZA

点开看大图
2017-10-31 回复 有任何疑惑可以回复我~

你的items变量没有定义,看下你的items是不是有在data里面注册了?

这个是app.vue的

<template>
  <div 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="toggleFinish(item)">
    {{item.label}}
    </li>
  </ul>
  </div>
</template>

<script>
import Store from './store'

export default {
  name: 'app',
  data:function(){
    return {
      title: 'this is a todoList',
      items:Store.fetch(),
      newItem:' '
    }
  },
  watch:{
    items:{
      handler:function(items){
        Store.save(items)
      },
      deep:true
    }
  },
  methods:{
    toggleFinish:function(item){
      item.isFinished = !item.isFinished;
    },
    addNew:function(){
      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;
}
ul{
  list-style-position: inside;
}
.finished{
  text-decoration: underline;
}
</style>

这个是store.js的

const STORAGE_KEY = 'todos-vuejs'
export default{
	fetch(){
		return JSON.parse(window.localStorage.getItem(STORAGE_KEY)||'[]')
	},
	save (items){
		window.localStorage.setItem(STORAGE_KEY,JSON.stringify(items))
	}
}


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
vue.js入门基础
  • 参与学习       209616    人
  • 解答问题       715    个

本门为vuejs入门教程,详细的讲解加实战,可以帮你进入vuejs的大门

进入课程

我的之前都是好好的,加上store.js之后就会报错,这是为什么啊

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号