Vue.js——常用的指令
2024-08-25 06:17:46
1、v-on:指令监听DOM事件,并在触发时运行一些javaScript代码。
<div id='myView'>
<img src="img/se.png" v-on:click="queryBook">
</div>
在视图模型中调用声明的监听事件
var myViewModel = new Vue({
el:'#myView',
data:myModel,
methods:{
queryBook:function(){
alert('ok?');
});
2、v-for:指令根据一组数组的选项列表进行渲染。v-for
指令需要使用 item in items
形式的特殊语法,items
是源数据数组并且 item
是数组元素迭代的别名。
<ul id="example-1">
<li v-for="item in items">
{{ item.message }}
</li>
</ul>
var example1 = new Vue({
el: '#example-1',
data: {
items: [
{ message: 'Foo' },
{ message: 'Bar' }
]
}
})
运行结果:
3、v-bind:动态地绑定一个或多个特性,或一个组件 prop 到表达式。
<!-- 绑定一个属性 -->
<img v-bind:src="data:imageSrc"> <!-- 缩写 -->
<img :src="data:imageSrc"> <!-- 内联字符串拼接 -->
<img :src="'/path/to/images/' + fileName"> <!-- class 绑定 -->
<div :class="{ red: isRed }"></div>
<div :class="[classA, classB]"></div>
<div :class="[classA, { classB: isB, classC: isC }]"> <!-- style 绑定 -->
<div :style="{ fontSize: size + 'px' }"></div>
<div :style="[styleObjectA, styleObjectB]"></div> <!-- 绑定一个有属性的对象 -->
<div v-bind="{ id: someProp, 'other-attr': otherProp }"></div> <!-- 通过 prop 修饰符绑定 DOM 属性 -->
<div v-bind:text-content.prop="text"></div> <!-- prop 绑定。“prop”必须在 my-component 中声明。-->
<my-component :prop="someThing"></my-component> <!-- 通过 $props 将父组件的 props 一起传给子组件 -->
<child-component v-bind="$props"></child-component> <!-- XLink -->
<svg><a :xlink:special="foo"></a></svg>
4、v-model:在表单控件元素上创建双向数据绑定,负责监听用户的输入事件以更新数据,并特别处理一些极端的例子。
<input v-model="message" placeholder="edit me">
<p>Message is: {{ message }}</p>
运行结果:
5、component(组件):可以扩展 HTML 元素,封装可重用的代码。(自定义元素)
<div id="myDiv">
//调用自定义组件
<student v-for="stu in stuList" v-bind:stu="stu" v-bind:key="stu.name">
</student>
</div>
<script>
var model = {stuList : [{id:1,name : "zhangsan", age : 18}, {id:2,name : "lisi", age : 18}, {id:3,name : "wangwu", age : 18}]};
var vm = new Vue({
el : "#myDiv",
data : model
});
<script>
//如果在同一个页面中,要在确保viewModel启动之前先注册组件
//在js中自定义组件目的是为了可复用
//注册
Vue.component('student', {
//声明props
props:['data'],
template: '<div><span style="color:red">{{data.id}}</span><span style="color:green">{{data.name}}</span><span style="color:blue">{{data.height}}</span></div>'
});
最新文章
- ubuntu 16.04 安装完QQ后,更新或apt-get报错
- 文件夹锁定(Source)
- KVC/KVO原理详解及编程指南
- java webservice的多种实现方法汇总
- codis3.1集群搭建
- c缺陷与陷阱笔记-第二章 语法陷阱
- ios项目开发(天气预报项目):通过经纬度获取当前城市名称
- Spring MVC中DispatcherServlet工作原理探究
- MySQL 通配符学习小结
- 了解SQL注入攻击
- 201521123073《Java程序设计》第3周学习总结
- Linux之安全应用
- 算法——算法时间复杂度的计算和大O阶的推导
- SQL SERVER 字符串按数字排序
- keras神经网络做简单的回归问题
- Golang 容器和不同header的解析
- PyCharm史上最强攻略
- SqlServer测试SQL语句执行效率
- Linux命令-文件搜索命令:find
- Python学习札记(四) Basic-1
热门文章
- CF1114F Please, another Queries on Array?(线段树,数论,欧拉函数,状态压缩)
- luogu P2181 对角线
- 洛谷P4043 支线剧情
- java -server 和 -client 的不同,及 java -server 时抛错原因
- 前端基础之html(一)
- html5的data-*属性,我们一起认识下
- 任意输入一串字符串,求该字符串中字符的出现次数并打印出来,如输入“bcaba”输出:b 2 c 1 a 2
- 20190311 Java处理JSON的常用类库
- shell关于变量的操作
- Nginx插件之openresty反向代理和日志滚动配置案例