美文网首页
Vue快速入门(一)

Vue快速入门(一)

作者: 阿九是只大胖喵 | 来源:发表于2017-12-18 15:47 被阅读0次

引入Vue
cdn方式
<script src="https://unpkg.com/vue"></script>

本地文件加载方式
<script src="./vue.js"></script>


实例化Vue对象
script标签中或者引入JavaScript文件实例化Vue对象。

<body>
  <!-- root是根容器 -->
  <div id="root">
    <h1>{{ name }}</h1>
  </div>
</body>

// 实例化Vue对象
new Vue({
  el: '#root',
  data: {
    name: 'vue instance'
  }
})

/**
 * el: element 需要将试图挂载的元素,一定是HTML中的根容器元素
 * data: 用于当前数据的存储,以键值对的形式存储,在HTML中可以直接使用 {{ key }}的方式获取值
 * 
 */

Vue方法
Vue实例中使用methods定义方法,可以在{{ }}中直接使用方法,且可以像正常函数那样传递参数。

在Vue的方法中,使用Vue实例中的data数据,可以以this.xxx的形式获取。

<body>
  <!-- root是根容器 -->
  <div id="root">
    <h1>{{ greet(new Date()) }}</h1>
    <p>Name: {{ name }}</p>
    <p>Job: {{ job }}</p>
  </div>
</body>

new Vue({
  el: '#root',
  data: {
    name: 'vue instance',
    job: 'web development'
  },
  methods: {
    greet(time) {
      return `Hello Vue ${time} ${this.name}`
    }
  }
})

属性绑定
如何给元素绑定值?
在Vue实例的data中新增一个数据:website: 'http://www.baidu.com'
在HTML中:<a href={{website}}>baidu</a>,这样是无法将数据绑定到属性上的。所以要使用Vue的v-bind指令。

    <!-- v-bind -->
    <a v-bind:href="website">baidu</a>
    <!-- v-bind简写方式 -->
    <a :href="website">baidu</a>
    <input type="text" :value="name">

事件:点击、双击、鼠标

  <!-- root是根容器 -->
  <div id="root">
    <h1>Events</h1>

    <!-- v-on:的形式绑定事件 -->
    <button v-on:click="add(1)">涨一岁</button>
    <!-- @xxx v-on:的简写形式 -->
    <button @click="subtract(1)">减一岁</button>
    <button v-on:dblclick="add(10)">加十岁</button>
    <button @dblclick="subtract(10)">减十岁</button>
    <p>My age is {{ age }}</p>

    <div id="canvas" v-on:mousemove="updateXY($event)"></div>
    {{ x }} - {{ y }}
  </div>

// 实例化Vue对象
new Vue({
  el: '#root',
  data: {
    age: 25,
    x: 0,
    y: 0
  },
  methods: {
    add(increment) {
      this.age = this.age + increment
    },
    subtract(decrement) {
      this.age = this.age - decrement
    },
    updateXY(e) {
      this.x = e.offsetX
      this.y = e.offsetY
    }
  }
})


事件修饰符

    <!-- once 只执行一次 -->
    <button v-on:click.once="add(1)">涨一岁</button>
    <!-- prevent: 阻止默认事件 -->
    <button @click.prevent="subtract(1)">减一岁</button>
    <!-- stop: 阻止冒泡 -->
    <button v-on:dblclick.stop="add(10)">加十岁</button>
    <!-- self: 只在该元素本身上才能触发 -->
    <button @dblclick.self="subtract(10)">减十岁</button>
    <p>My age is {{ age }}</p>

键盘事件及其修饰符

<body>
  <!-- root是根容器 -->
  <div id="root">
    <h1>键盘 Events</h1>
    <label for="">姓名: </label>
    <input type="text" v-on:keyup="logName($event)">
    <label for="">年龄: </label>
    <!-- enter修饰符,当按回车时才触发 -->
    <input type="text" v-on:keyup.enter="logAge($event)">
  </div>
</body>

// 实例化Vue对象
new Vue({
  el: '#root',
  data: {
    
  },
  methods: {
    logName(event) {
      console.log(event.target.value)
    },
    logAge(event) {
      console.log(event.target.value)
    }
  }
})

github源码地址

相关文章

  • HTML学习之Vue.js

    Vue.js——60分钟快速入门

  • Vue基础知识总结

    请阅读以下博客,通俗易懂 Vue基础知识总结 Vue.js——60分钟快速入门 Vue.js——60分钟组件快速入...

  • vue入门教程

    Vue-cli入门教程 vue-cli是官方发布vue.js项目脚手架,使用vue-cli可以快速创建vue项目 ...

  • Vue快速入门(一)

    引入Vuecdn方式 本地文件加载方式 实例化Vue对象在script标签中或者引入JavaScript文件实例化...

  • TS 入门和Vue实践

    TS 入门和Vue实践 一、TS 快速上手 从 JavaScript 程序员的角度总结思考,快速上手理解 Type...

  • Vue快速入门(一)《快乐Vue》

    [TOC] 什么是 Vue.js Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进...

  • Vue 快速入门

    Vue 即 Vue.js,它是流行的前端开发框架,目前已经发展成为优秀的前端生态。 学习 Vue 之前,需要具备:...

  • Vue快速入门

    一、Vue简介 1.vue介绍 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进...

  • vue快速入门

    一、什么是 Vue Vue 是一个用于构建用户界面的渐进式的js框架,Vue 的核心是MVVM双向数据绑定模式及组...

  • 快速入门Vue

    刚进公司做的第一个项目,刚好前端人手不足,需要我们后端同时兼顾前后端的工作,采用的iview UI框架,基于vue...

网友评论

      本文标题:Vue快速入门(一)

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