基础语法

引入vue

<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<!-- 生产环境版本,优化了尺寸和速度 -->
<script src="https://cdn.jsdelivr.net/npm/vue"></script>

声明式渲染

<div id="app">
<!-- v-bind attribute 被称为指令 -->
<span v-bind:title="message">鼠标悬停几秒钟查看此处动态绑定的提示信息!</span></div>
<script>
var app = new Vue({
el: '#app',
data: {message: '页面加载于 ' + new Date().toLocaleString()}
})
</script>

条件与循环

  1. 条件

    <div id="app">
    <p v-if="seen">现在你看到我了</p>
    </div>
    <script>
    var app = new Vue({
    el: '#app',
    data: {seen: true}
    })
    </script>
  2. 循环

    <div id="app">
    <ol>
    <li v-for="todo in todos">{{ todo.text }}</li>
    </ol>
    </div>
    <script>
    var app = new Vue({
    el: '#app',
    data: {
    todos: [
    {text: '学习 JavaScript' },
    { text: '学习 Vue' },
    { text: '整个牛项目' }
    ]
    }
    })
    </script>

处理交互

  1. v-on

    <div id="app">
    <p>{{ message }}</p>
    <button v-on:click="reverseMessage">反转消息</button>
    </div>
    <script>
    var app = new Vue({
    el: '#app',
    data: {message: 'Hello Vue.js!'},
    methods: {
    reverseMessage: function () {
    this.message = this.message.split('').reverse().join('')
    }
    }
    })
    </script>
  2. v-model

    <div id="app">
    <p>{{ message }}</p>
    <input v-model="message">
    </div>
    <script>
    var app = new Vue({
    el: '#app',
    data: {message: 'Hello Vue!'}
    })
    </script>

注册组件

<div id="app">
<ol>
<!--为每个 todo-item 提供 todo 对象,提供为组件参数-->
<todo-item v-for="item in groceryList" v-bind:key="item.id"v-bind:todo="item"></todo-item>
</ol>
</div>
<script>
Vue.component('todo-item', {
props: ['todo'],
template: '<li>{{ todo.text }}</li>'
})
var app = new Vue({
el: '#app',
data: {
groceryList: [
{ id: 0, text: '蔬菜' },
{ id: 1, text: '奶酪' },
{ id: 2, text: '随便其它什么人吃的东西' }
]
}
})
</script>

实例properties

Vue 实例还暴露了一些有用的实例 property与方法。它们都有前缀 $

var data = { a: 1 }
var vm = new Vue({
el: '#example',
data: data
})
vm.$data === data // => true
vm.$el === document.getElementById('example') // => true
// $watch 是一个实例方法
vm.$watch('a', function (newValue, oldValue) { // 这个回调将在 `vm.a` 改变后调用 })

模板语法

插值

<!--1. 文本 -->
<span v-once>这个将不会改变: {{ msg }}</span>
<!--2. HTML -->
<!--动态渲染的任意 HTML 可能会非常危险,因为它很容易导致 XSS 攻击。请只对可信内容使用 HTML 插值,绝不要对用户提供的内容使用插值。 -->
<span v-html="rawHtml"></span>
<!--3.Attribute -->
<div v-bind:id="dynamicId"></div>
<!--4.value是表达式 -->
<div v-bind:id="'list-' + id"></div>

指令

指令 (Directives) 是带有 v- 前缀的特殊 attribute。

<!--1.静态参数 -->
<a v-bind:href="url">...</a>
<!--2.动态参数 -->
<!-- 空格和引号,放在 HTML attribute 名里是无效的 -->
<!-- 需要避免使用大写字符来命名键名,因为浏览器会把 attribute 名全部强制转为小写 -->
<a v-on:[eventName]="doSomething"> ... </a>
<a v-bind:['foo' + bar]="value"> ... </a><!-- 这会触发一个编译警告 -->
<!--3.修饰符 -->
<form v-on:submit.prevent="onSubmit">...</form>

缩写

<!--1.v-bind -->
<a :href="url" :[key]="name">...</a>
<!--2.v-on -->
<a @click="doSomething" @[event]="doOtherthing">>...</a>

VUE学习-基础(基础语法 & 模板语法)的更多相关文章

  1. Django 2.0 学习(12):Django 模板语法

    Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }} 在Django模板中遍历复杂数据结构的关键是句点字 ...

  2. Vue学习计划基础笔记(二) - 模板语法,计算属性,侦听器

    模板语法.计算属性和侦听器 目标: 1.熟练使用vue的模板语法 2.理解计算属性与侦听器的用法以及应用场景 1. 模板语法 <div id="app"> <!- ...

  3. vue简介、入门、模板语法

    在菜鸟教程上面学习的vue.js.同时结合vue中文文档网站,便于自己记录. vueAPI网站:API 1. 简介 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框 ...

  4. Vue学习计划基础笔记(一) - vue实例

    最近又重新看vue的文档了,计划是别人写的,之前看过一次,没有考虑太多,只考虑看懂能用就好.看完之后写过写demo,现在是零实际项目经验的,所以这一次打算细看,算是官方文档的二次产物吧,但是不是全部直 ...

  5. Vue学习一:{{}}html模板使用方法

    本文为博主原创,未经允许不得转载: 之前自学了vue,在项目中应用了vue,由于是第一次使用,感觉非常强大,使用也非常方便,趁有时间,总结一下vue学习过程中 各个指令的使用方法,只要掌握了vue的指 ...

  6. Vue学习计划基础笔记(六) - 组件基础

    组件基础 目标: 掌握组件的构建方式 掌握如何复用组件.父子组件如何传值.如何向父组件发送消息 掌握如何通过插槽分发内容 了解解析dom模板时的注意事项 了解动态组件 组件 组件理解起来大概上就和ph ...

  7. Vue学习计划基础笔记(五) - 表单输入绑定、组件基础

    表单输入绑定.组件基础 目标: 熟练掌握vue中表单的处理方式 对之前学习的内容简单回顾一下,并写一个实例,学以致用(最好脱离文档) vue中表单的处理方式 vue中表单的处理使用了v-model指令 ...

  8. Vue学习计划基础笔记(三)-class与style绑定,条件渲染和列表渲染

    Class与style绑定.条件渲染和列表渲染 目标: 熟练使用class与style绑定的多种方式 熟悉v-if与v-for的用法,以及v-if和v-for一起使用的注意事项 class与style ...

  9. Vue学习之基础及部分指令小结(一)

    一.理解MVC和MVVM的关系: MVC:Model View Controller (模型 视图 控制器) 分别为:业务逻辑.界面.用来调度View和Model层 MVVM:Model View V ...

  10. Vue学习计划基础笔记(四) - 事件处理

    事件处理 目标: 熟练掌握事件监听的方式,熟悉事件处理方式以及各类事件修饰符 理解在html中监听事件的意义 监听事件(v-on) 类似普通的on,例如v-on:click或@click就相当于普通的 ...

随机推荐

  1. rtl8188eu 关闭power save

    RTL8188eu 关闭power saving 当PC端没有和设备交换数据时,rtl8188eu会进入节能模式,很影响调试开发. 关闭方法:找到驱动代码include/autoconf.h 发现要禁 ...

  2. 分析网络工具 Wireshark与tcpdump

    一.安装使用 1. 安装 2. 选择网卡:我们的主机就是通过其中一块网卡和其他主机进行数据交互: 3. 点击开始:打开wireshark,点击左上角那个蓝色的鲨鱼鳍按钮,开始捕获新的分组并清空之前的分 ...

  3. 解决Mac安装Homebrew失败

    首先使用Homebrew官网的安装shell命令安装: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebr ...

  4. maven学习记录:命令行查看本地仓库所在位置

    命令行 mvn help:effective-settings 查看localRepository的的位置

  5. Java-获取真实用户ip

    1 import common.util.StringUtil; 2 import org.springframework.web.bind.annotation.ModelAttribute; 3 ...

  6. StarRC 转XRC flow

    抽取寄生参数是我们工作中经常做的事情,目前来说三家EDA 都有抽取工具,分别是StarRC, XRC,QRC,其中QRC现在有个升级版本Quantus,但是由于calibre在DRC 和LVS方面太强 ...

  7. 记maven打包加入外部jar后tomcat运行失败问题

    环境:maven 3.8.0 .tomcat 8.5.30 因为项目需要额外的引用外部jar,需要打包到war中. 所以在pom中加入了 <webResources> <resour ...

  8. Java笔记_方法重载

    /** * @ClassName OverLoadExercise * @Description TODO * @Author Orange * @Date 2021/4/19 8:29 * @Ver ...

  9. git 提示 fatal: Authentication failed for....

    在我们进行clone 或 pull 或 push的时候,出现这个问题,先想一下是不是自己的账号密码是不是改了 一般情况下通常需要重新重置一下验证设置 执行以下命令: git config --syst ...

  10. Jmeter学习:文件类函数

    一.__StringFromFile 功能介绍: 从文件中读取一行数据,所有线程共享行数,依次读取,默认路径为$JMETER_HOME/bin/ ${__StringFromFile(参数 1,参数 ...