Vue的学习1

作者: joker731 | 来源:发表于2018-03-18 13:58 被阅读17次

1把基础学好
2把教程看到「自定义指令」
3响应式机制和组件生命周期是重点
4学习 vue-router 和 vuex
5学习 Node 工具

第一次课

  • 通过ip vue实例和html互相绑定 ,互相的改动也会响应
    //这样做之后,vue实例的data 用{{}}语法绑定到html模块区域的任意位置,包括节点属性上,只不过写法会改变
    //不够纯字符串的互相绑定好像是要用到v-Module
  • 模板指令是绑定节点属性的
  • 触发事件是放在vue的method里面
    //第一次课,做了一个编辑2个imput+button切换编辑的小功能,用到了几个标签,做了一个状态开关
    //状态开关要写在data里面,因为使用v-show它的值默认是boolean,因为多处要用到这样的组件,所以用组件打包实现这样的功能,减少代码
  • 如何打包封装组件的呢?
    //首先要声明component(里面接受2个参数,第一个是组件名字;第二个是一个对象,里面写的是组件的参数,其中也是可以放data,它和vue实力的data不同,是属于template自己的data)
    //vue的api提供了一个poros,专门给组件提供一个外部接口用来传参数进入组件,poros是一个数组,因为有时候需要多个参数,那哪些数据是可以通过poros传进组件的呢?
    //使用poros的数据,就是在html模板的节点上用v-bind,html模板上用{{}}
    //声明过后,直接在html模板上,可以直接输入组件名使用
  • 前面提到了组件的传参问题,就要提到传入和传出的用法了,前面提到传入现在讲传出
    //老师这里的做法是用@imput监听事件,当imput被触发就操作函数将数据改动出去,让外边的app做一个函数改动自己的data实现数据的双绑定
    //其中@imput监听事件x函数,是要这样写才能把数据传出去
    //this.$emit('edit,e.target.value')
app源码
var app = new Vue({
    el: '#app',
    data: {
      editingName: false,
      resume: {
        name: '姓名',
        gender: '女',
        birthday: '1990年1月',
        jobTitle: '前端工程师',
        phone: '138111111111',
        email: 'example@example.com'
      }
    },
    methods: {
      onEdit(key, value){
        this.resume[key] = value
      },
    }
  })
span组件源码
Vue.component('editable-span', {
    props: ['value'],
    template: `
        <span class="editableSpan">
          <span v-show="!editing">{{value}}</span>
          <input v-show="editing" type="text" v-bind:value="value" @input="triggerEdit">
          <button @click="editing = !editing">edit</button>
        </span>
      `,
    data(){
      return {
        editing: false
      }
    },
    methods: {
      triggerEdit(e){
        this.$emit('edit', e.target.value)
      }
    }
  })

小总结

目前为止学到的vue知识

  • 一个大的app,vue用id绑定了整个页面,页面上的逻辑vue都能解决,所以说axios+vue=jQuery可以死了
  • 控制页面是否显示用v-show指令,它接受的是一个状态布尔值,这个布尔值得在大的APP.vue上面的data上面声明,html模板才可以使用
    //这个太好用了,dom的操作vue都帮你封装好了,只要用指令就行了
  • 点击节点,触发事件用on-click指令,可以简写@click='xxxx',这个xxxx函数得在大的APP.vue上面的methods声明
  • 页面的css效果给个class写个文件引入就解决了
  • 一个页面上的所有东西都用一个App.vue解决了,vue上面就只有data methods ...就没了
  • v-clock指令专门用于隐藏class样式,避免css加载比JavaScript快导致页面闪烁

前端路由

  • 路由就是向导,根据路径的不同展示不用的页面
  • 这件事情一般是后端做,比如上课时候的http-server代码中的if path XXX ~这样的if else代码,现在这件事情让前端来做,也就是给几个button根据不同的button采用不同的class 显示出不同的'页面效果'
  • 这样一来就显得前端做了路由一样

相关文章

  • vue-oneday学习指令

    1vue学习目标 2,vue介绍 3,vue的基本使用 4,vue的指令学习 5,v-text="mes"和{{m...

  • vue2 基础学习02 (Vue组件)

    vue2 基础学习02 (Vue组件) vue学习路径和建议----尤雨溪 vue官网 1.Vue组件 参考官方文...

  • Vue学习总结(2019.7.31-8.4)

    Vue学习总结 目录 vue基础知识(1-13)vue 引入,实例化vue 数据 & 方法vue 绑定(:)vue...

  • Vue学习笔记

    Vue学习笔记 1. 创建项目 2. Vue Router Issues&Solutions 1. Vue运行环境...

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

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

  • Vue学习笔记---暂保存

    Vue的学习笔记 一 Vue基本 1. Vue的设计理念 Vue响应式原理[https://www.process...

  • Vue的学习1

    1把基础学好2把教程看到「自定义指令」3响应式机制和组件生命周期是重点4学习 vue-router 和 vuex5...

  • Vue学习(1)

    vue初始化项目 初始化会产生一个pacakge.json的文件,这个文件用来描述项目的依赖执行完 npm ins...

  • vue学习1

    Vue源码学习 基本函数 bind的polyfill方案 once方法 generateComponentTrac...

  • 学习vue (1)

    什么是Vue.js Vue.js 是目前最火的一个前端框架,React 是最流行的一个前端框架 Vue.js 是前...

网友评论

    本文标题:Vue的学习1

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