基本语法

<body>
<script src="vue.js"></script>
<div id="app">
{{ msg }}
<div v-html='html'>
<input type="button" value="改变" @click="fc">
<div class="box" :class="{active:is_ok}" :class="['active']"></div>
</div>
<script>
new Vue({
el: '#app',
data: {
html:"<p>hello</p>",
msg: 'hello',
is_ok: false
},
methods: {
fc: function () {
this.msg = 'ssss' }
}
})
</script>

v-text相当于innerText

v-html相当于innerHTML

v-if vs v-show
v-if 是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。

v-if 也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。

相比之下,v-show 就简单得多——不管初始条件是什么,元素总是会被渲染,并且只是简单地基于 CSS 进行切换。

一般来说,v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件很少改变,则使用 v-if 较好。

<h1 v-if="age>15">{{ age }}</h1>
<h2 v-else-if="age<15">二标签</h2>
<h3 v-else>三标签</h3> <div v-show='true'>
<h1>1111</h1>
</div>

v-bind可以绑定标签中任何属性          v-bind:src 等价于 :src

v-on 可以监听 js中所有事件                        v-on:click 等价于 @click

class 两种绑定方式:

1. :class="{active:is_ok}"

2. :class="['active']"

三元运算符

<div v-bind:class="[isActive ? activeClass : '', errorClass]"></div>

事件处理

阻止单击事件继续传播

<a v-on:click.stop="fun"></a>

提交时间不在重载页面

<form v-on:submit.prevent="onSubmit"></form>

串联

<a v-on:click.stop.prevent="fun"></a>

 循环

<ul>
<li v-for="(list,index) in list_all">
{{ index+1 }}--{{ list }}
</li>
</ul>

表单输入绑定(用v-model)

<input type="text" v-model="username">
<textarea v-model="info"></textarea>

单选框绑定

{{ xb }}
<input type="radio" value="0" name="gender" v-model="xb">男
<input type="radio" value="1" name="gender" v-model="xb">女
多选框
<input type="checkbox" value="study" name="gender" v-model="xb">学习
<input type="checkbox" value="practice" name="gender" v-model="xb">练习
xb: []

<select v-model="xb">
<option value="0">bbb</option>
<option value="1">jjj</option>
<option value="2">sss</option>
<option value="3">hhh</option>
</select>

计算属性和监听属性

计算(vue推荐方法)
computed: {
fnc() {
return this.msg.split('').reverse().join('')
}
}
监听:
computed: {
    fnc() {
return this.msg.split('').reverse().join('')
}
},
watch: {
msg:function(newVal, oldVal) {
alert(newVal + ' ' + oldVal)
}
}

过滤器

<div id="app">
{{ price | US | Yuan }}
</div>
<script>
//全局
Vue.filter('Yuan', function (value) {
if (value == '') {
return
}
return value + '美元'
})
//内部
var vue = new Vue({
el: "#app",
data: {
price: 99.9
},
filters: {
US: function (value) {
return '$' + value
}
}
}) </script>

axios(ajax)

var demo = new Vue({
el: "#app",
data: {
list_data: [],
list: [1, 2, 3, 4]
},
mounted: function () {
axios({
method: 'get',
url: '/1',
}).then(
//function (dat) {
//demo.list_data = dat.data
// }
dat => {
this.list_data = dat.data
} ).catch(function (error) {
console.log(error) })
}
})
 组件-基础 (面包屑导航)

 <style>
.crumb {
width: 90%;
line-height: 50px;
margin: 0px auto;
border-bottom: 1px solid #ddd;
}
</style> <body>
<div id="app">
<breadcrumb></breadcrumb>
</div> <script>
Vue.component('breadcrumb', {
template: '<div class="crumb">当前位置是:首页&gt;新闻列表</div>' }) var vm = new Vue({
el: '#app',
})
</script>
组件02

    <style>
.crumb {
width: 90%;
line-height: 50px;
margin: 0px auto;
border-bottom: 1px solid #ddd;
} .hot {
color: red;
font-weight: bold;
text-indent: 10px;
}
</style> <body>
<div id="app">
<breadcrumb pos="首页>新闻"></breadcrumb>
</div> <script>
Vue.component('breadcrumb', {
props: ['pos'],
template: '<div :class="{crumb:true,hot:isHot}" @click="isHot=!isHot">{{ pos }}</div>',
// 独立的数据function(){return{name:'aa'}} 共享数据 : data:{}
data: function () {
return {
isHot: true, }
}
}) var vm = new Vue({
el: '#app',
})
</script>

vue 跨域解决方法

dev: {

    // Paths
assetsSubDirectory: 'static',
assetsPublicPath: '/',
proxyTable: {
'/api': {
target: 'http://localhost:7001',//后端接口地址
changeOrigin: true,//是否允许跨越
pathRewrite: {
'^/apis': '',//重写,
}
}
},
 
 

Vue的模板语法的更多相关文章

  1. vue基础---模板语法

    Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML 解 ...

  2. Vue.js 模板语法

    本章节将详细介绍 Vue.js 模板语法,如果对 HTML +Css +JavaScript 有一定的了解,学习起来将信手拈来. Vue.js 使用了基于 HTML 的模版语法,允许开发者声明式地将 ...

  3. VUE:模板语法(小白自学)

    VUE:模板语法 一:何为声明式 安装规定的语法,去实现一些效果(不需要管流程). 二:模板语法 <!DOCTYPE html> <html> <head> < ...

  4. 【Vue】Vue框架常用知识点 Vue的模板语法、计算属性与侦听器、条件渲染、列表渲染、Class与Style绑定介绍与基本的用法

    Vue框架常用知识点 文章目录 Vue框架常用知识点 知识点解释 第一个vue应用 模板语法 计算属性与侦听器 条件渲染.列表渲染.Class与Style绑定 知识点解释 vue框架知识体系 [1]基 ...

  5. Vue基础之Vue的模板语法

    Vue基础之Vue的模板语法 数据绑定 01 数据绑定最常见的形式就是使用插值表达式(两个大括号!)[也就是小胡子语法!mustache] <body> <!-- Vue.js的应用 ...

  6. 前端框架之Vue(2)-模板语法

    Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML 解 ...

  7. Vue常用模板语法

    常用模板语法   本篇将在上一篇的基础上记录文本渲染.表达式.过滤器以及常用指令的简单用法. 一.文本渲染 Vue支持动态渲染文本,即在修改属性的同时,实时渲染文本内容.同时为了提高渲染效率,也支持只 ...

  8. vue基础——模板语法

    模板语法介绍 Vue.js使用了基于HTML的模板语法,允许开发者声明式地将dom绑定至底层Vue实例的数据.所有Vue.js的模板都是合法的HTML,所以能被遵循规范的浏览器和HTML解析器解析. ...

  9. 一起学Vue之模板语法

    概述 Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTM ...

  10. Vue小白篇 -Vue 的模板语法

    可以插入任何你想插入的内容,除了 if-else if-else用三元运算符代替 <div id="box"> <!--模板语法--> <h2> ...

随机推荐

  1. O(n²)、O(n)、O(1)、O(nlogn)

    大体上和 @丁戍 说的差不多. 简单说O(n²)表示当n很大的时候,复杂度约等于Cn²,C是某个常数,简单说就是当n足够大的时候,n的线性增长,复杂度将沿平方增长. O(n)也是差不多的意思,也就是说 ...

  2. 使用Kotlin如何startActivity

    没错,就是这么简单的一个功能,不过由于初学kotlin,所以找了很久才找到如何写,所以还是贴出来给需要的人吧,上代码: startActivity(Intent(MainActivity@this, ...

  3. 一步一步学Silverlight 2系列(1):创建一个基本的Silverlight应用

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  4. silverlight漂亮的文件上传进度显示原理及示例

    silverlight漂亮的文件上传进度显示原理及示例 作者:chenxumi 出处:博客园  2009/11/27 13:37:11 阅读 1219  次 概述:在网站根目录web.config里配 ...

  5. 如何编写linux下nand flash驱动-4

    2.       软件方面 如果想要在Linux下编写Nand Flash驱动,那么就先要搞清楚Linux下,关于此部分的整个框架.弄明白,系统是如何管理你的nand flash的,以及,系统都帮你做 ...

  6. openpyxl操作excel

    [转] openpyxl库可以读写xlsx格式的文件,对于xls旧格式的文件只能用xlrd读,xlwt写来完成了. python有很多模块都是用来操作excel的,比如xlrd,xlwt,pyExce ...

  7. express中cookie的使用和cookie-parser的解读

    https://segmentfault.com/a/1190000004139342?_ea=504710 最近在研究express,学着使用cookie,开始不会用,就百度了一下,没有百度到特别完 ...

  8. 关于ArcGis for javascrept之FeatureLayer类与GraphicsLayer类

    FeatureLayer: ArcGIS for Server发布的要素服务或者地图服务中的图层 构造方法: myFeatureLayer = new esri.layers.FeatureLayer ...

  9. angularJs 之deferred

    angularJs 对promise的封装 var deferred = $q.defer(); deferred.promise.then(function(){ var result = {} c ...

  10. ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(二)数据库初始化、基本登录页面以及授权逻辑的建立

    前言: 本系列文章主要为我之前所学知识的一次微小的实践,以我学校图书馆管理系统为雏形所作. 本系列文章主要参考资料: 微软文档:https://docs.microsoft.com/zh-cn/asp ...