Vue基础语法(样式绑定、时间处理器、表单、组件)

news/2024/11/30 7:38:49/

样式绑定

一、 class绑定
使用方式:v-bind:class=“expression”
expression的类型:字符串、数组、对象

二、 style绑定
v-bind:style=“expression”
expression的类型:字符串、数组、对象

样式绑定.html
<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script><title>vue的样式绑定</title><style>.a{color: red;}.b{color: green;}.c{font-size: 36px;}</style></head><body><div id="app"><ul><li><h3>文本</h3>{{msg}}</li><li><h3>样式一</h3><div :class="xa">{{msg}}</div></li><li><h3>样式二</h3><div :class="xb">{{msg}}</div></li><li><h3>样式三</h3><div :class="xc">{{msg}}</div></li></ul></div></body><script type="text/javascript">new Vue({el:"#app",data(){return{msg:'hello vue',xa:'a',xb:'b',xc:['c','a']};}});</script>
</html>

运行Html可得到
在这里插入图片描述

事件处理器.html
<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script><title>事件处理器</title><style>div{padding: 40px;}</style></head><body><div id="app"><ul><li><h3>文本</h3>{{msg}}</li><li><h3>防止事件冒泡</h3><div style="height: 300px;width: 300px;background-color: red; margin-top: 20px;" @click.stop="a"><div style="height: 200px;width: 200px;background-color: green;" @click.stop="b"><div style="height: 100px;width: 100px;background-color: pink;" @click.stop="c"><div style="height: 50px;width: 50px;background-color:orange;" @click.stop="d"></div></div></div></div></li><li><h3>事件只能点击一次</h3>{{qqmsg}}<input type="text" v-model="msg" @click="send" /><button @click="send">发送</button><button @click.once="send">点击一次</button></li><li><h3>表单里的复选框</h3><div v-for="item,index in hobby" ><input type="checkbox" v-model="checkedIds" name="hobby" :value="item.id" />{{item.name}}</div>{{checkedIds}}</li><li><h3>表单里的下拉框</h3><select name="likes" v-model="selectedIds"><option v-for="item,index in hobby" :value="item.id" >{{item.name}}</option></select>{{selectedIds}}</li></ul></div></body><script type="text/javascript">new Vue({el: "#app",data() {return {msg: 'hello vue',qqmsg: null,hobby:[{id:'1',name:'智障'},{id:'2',name:'爱仕达'},{id:'3',name:'喝咖啡'}],checkedIds:[],selectedIds:null};},methods: {a() {alert('a')},b() {alert('b')},c() {alert('c')},d() {alert('d')},send() {this.qqmsg = this.msg;this.msg = null;}}});</script>
</html>

在这里插入图片描述

表单.html
<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script><title>表单</title></head><body><div id="app"><h1>标题</h1><ul><li><p>vue表单</p><label>姓名:</label><input v-model="uname" /><br /><label>密码:</label><input v-model="upwd" type="password" /><br /><!-- 将用户的输入值转为 Number 类型 --><label>年龄:</label><input v-model.number="age" /><br /><label>性别:</label><input type="radio" v-model="sex" name="sex" value="1" />男<input type="radio" v-model="sex" name="sex" value="0" />女<br /><label>爱好:</label><div v-for="h in hobby"><input type="checkbox" v-model="hobbies" v-bind:value="h.id" />{{h.name}}</div><label>类别:</label><select v-model="type"><option value="-1">===请选择===</option><option v-for="t in types" v-bind:value="t.id">{{t.name}}</option></select><br /><label>备注:</label><textarea v-bind:value="mark"></textarea><br />确认<input type="checkbox" v-model="flag" /><input type="submit" v-bind:disabled="show" v-on:click="doSubmit" /></li></ul></div></body><script type="text/javascript">new Vue({el: '#app',data() {return {uname: null,upwd: null,age: 10,sex: 1,hobby: [{id: 1,name: '篮球'}, {id: 2,name: '足球'}, {id: 3,name: '象棋'}],hobbies: [],types: [{id: 1,name: 'A'}, {id: 2,name: 'B'}, {id: 3,name: 'C'}],type: null,mark: '学生备注',flag: false}},computed: {show: function() {return !this.flag;}},methods: {doSubmit: function() {console.log('doSubmit')var obj = {uname: this.uname,upwd: this.upwd,age: this.age + 10,sex: this.sex,hobbies: this.hobbies,type: this.type,mark: this.mark,}console.log(obj);}}})</script>
</html>

在这里插入图片描述

组件.html
<!DOCTYPE html>
<html><head><meta charset="utf-8"><script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script><title>组件</title></head><body><div id="app"><h1>标题</h1><ul><li><p>局部vue组件定义</p><my-button></my-button></li><li><p>父组件传值子组件</p><my-button m="爱仕达"></my-button></li><li><p>子组件传值父组件</p><my-button @three-click="doss"></my-button></li><li><p>全局vue组件的注册</p><my-button2></my-button2></li></ul></div></body><script type="text/javascript">Vue.component('my-button2',{props:['m'],template:'<button @click="doxx">自定义按钮,被{{m}}点击了{{n}}次</button>',data() {return {n:0,}},methods:{doxx(){this.n++;this.$emit('three-click',this.n,'vue','前端');},}})new Vue({el: '#app',data() {return {msg:'aa',}},computed:{xs(){return this.msg;	}},methods:{doss(n,x,y){alert(n);alert(x);alert(y);}},components:{'my-button':{props:['m'],template:'<button @click="doxx">自定义按钮,被{{m}}点击了{{n}}次</button>',data() {return {n:0,}},methods:{doxx(){this.n++;this.$emit('three-click',this.n,'智障','笑着醒');},}}}})</script>
</html>

在这里插入图片描述


http://www.ppmy.cn/news/234419.html

相关文章

wxpython学习记录

写在前面的话 对于wxpython的学习我推荐三个阶段&#xff0c;第一阶段是完全无基础学习阶段&#xff0c;建议使用 UI 软件进行布局&#xff0c;第二阶段是深化阶段&#xff0c;对wxpython有了一定的基础&#xff0c;可以尝试纯代码布局&#xff0c;加深印象&#xff0c;第三阶…

扩展语法GFM ---

推展语法GFM 在众多Markdown拓展语法中&#xff0c;GFM自宫了包括表格、任务列表、删除线、围栏代码、Emoji等在内的标记语法。 删除线 语法&#xff1a;~~被删除的文字~~ 实例&#xff1a;sadawdasascassa爱仕达群翁1234565 表情符号 语法&#xff1a;:表情代码: 实例&…

day16-正则表达式和面向对象

day16-正则表达式和面向对象 一、检测类符号 1.\b - 检测是否是单词边界 单词边界&#xff1a;凡是可以将两个单词分开的符号都是单词边界&#xff0c;比如&#xff1a;空白字符、标点符号对应的字符&#xff0c;字符串开头和结尾 注意&#xff1a;检测类符号是在匹配成功的…

C语言整型提升、算术转换、操作符的属性

C语言整型提升、算术转换、操作符的属性 整型提升 C语言在进行整型算术运算时&#xff0c;总是把字符型、短整型操作数在使用之前转换为普通整型参与运算。   整型提升是按照数据类型的符号位来提升的&#xff0c;正数补0&#xff0c;负数补1。如果是无符号的数&#xff0c;高…

【Matlab风电功率预测】麻雀算法优化BP神经网络风电功率预测【含源码 1319期】

一、代码运行视频&#xff08;哔哩哔哩&#xff09; 【Matlab风电功率预测】麻雀算法优化BP神经网络风电功率预测【含源码 1319期】 二、matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]张启龙,王立威.基于遗传算法优化BP神经网络模型的风电功率预测[J]. 电子测试…

用matlab画效率图时,如何让去除外特性以外部分的等高线?

最近在做汽车能量管理的相关项目&#xff0c;需要将发动机&电机的工作点在map图上表示出来&#xff0c;peace of cake&#xff0c;在拿到工作点的数据以及发动机油耗数据&电机效率数据以后&#xff0c;我很快将他们处理出来&#xff0c;于是得到下面的图&#xff1a; &…

【SVM分类】基于支持向量机实现电力节点分类附matlab代码

1 简介 2 部分代码 function mpc = case39 %CASE39 Power flow data for 39 bus New England system. % Please see CASEFORMAT for details on the case file format. % Data taken from [1] with the following modifications/additions: % % - renumbered gen bu…

tpx色卡电子版_潘通色卡电子版Pantone TPX(新175色)

页数色号颜色颜色名称 N0115-3800TPXPorpoise N0116-3800TPXSatelliet N0118-1210TPXDriftwood N0118-1304TPXFalcon N0119-0808TPXMorel N0118-1108TPXFallen Rock N0116-0205TPXVintage Khaki N0216-1104TPXCrockery N0216-1109TPXGreige N0217-1311TPXDesert Taupe N0215-13…