美文网首页
vue初体验

vue初体验

作者: 李晓通 | 来源:发表于2018-08-27 16:19 被阅读20次

前言

本文纯属自己学习vue的笔记,如果有任何错误欢迎大神指出!

文本渲染

通过span标签我们可以渲染文本,可以直接写<span>文本</span>,也可以通过<span>{{变量名}}</span>进行数据绑定

<template>
  <span>{{message}}</span>
</template>

<script>
  export default {
    name: 'test',
    data () {
      return {
        message: 'hello vue'
      }
    }
  }
</script>
span

监听点击事件

通过v-on添加一个点击的监听器

<template>
  <div class="container">
    <span>{{message}}</span>
    <button v-on:click="changeText">点击改变文字</button>
  </div>
</template>

<script>
  export default {
    name: 'test',
    data () {
      return {
        message: 'hello vue!'
      }
    },
    methods: {
      changeText () {
        this.message = 'lxt'
      }
    }
  }
</script>
click

if判断

通过v-if="布尔值"来决定是否显示

<template>
  <div class="container">
    <span v-if="flag">通过if判断是否显示</span>
    <button class="btn" v-on:click="changeFlag">点击我改变flag</button>
  </div>
</template>

<script>
  export default {
    name: 'test',
    data () {
      return {
        flag: true
      }
    },
    methods: {
      changeFlag () {
        this.flag = !this.flag
      }
    }
  }
</script>
if判断.gif

for循环

我们可以通过v-for来渲染列表

<template>
  <div class="container">
    <ol>
      <li class="li" v-for="item in items">
        {{item.text}}
      </li>
    </ol>
  </div>
</template>

<script>
  export default {
    name: 'test',
    data () {
      return {
        items: [
          {text: 'hello vue'},
          {text: '来吧,学习for循环吧'},
          {text: '渲染完毕'},
        ]
      }
    }
  }
</script>

<style>
  .container {
    flex-direction: column;
    display: flex;
    align-items: center;
  }

  .li {
    text-align: start;
  }
</style>
for

input双向绑定

通过v-model可以轻松实现表单输入和应用状态之间的双向绑定

<template>
  <div class="container">
    <span>{{message}}</span>
    <input v-model="message"/>
    <button v-on:click="changeText">点击改变文字</button>
  </div>
</template>

<script>
  export default {
    name: 'test',
    data () {
      return {
        message: 'hello vue!'
      }
    },
    methods: {
      changeText () {
        this.message = 'lxt'
      }
    }
  }
</script>
v-model

相关文章

网友评论

      本文标题:vue初体验

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