JQury vs VUE
1.Jquery 操作数据需要操作DOM
2.Vue 主要面向数据操作(JSP)
Vue
1.导包(jar, js文件)
2.编写模板结构(body中的html)
3.编写脚本
- 创建VUE对象
- el属性指定需要绑定的元素
- 编写对应的data
VUE特点
整体构成 = 模板 + 数据
-
模板
<body> <!-- 视图 --> <div id="div"> {{msg}} </div> </body>
-
数据来源
// 脚本 new Vue({ el:"#div", data:{ msg:"Hello Vue" } });
VUE参数
-
el
- 指定你的模板元素位置
-
data
- 指定模板中使用的数据
-
methods:
-
可以定义方法,并且在方法中能够使用this来操作数据
-
普通对象定义形式
methods:{ study: function(){ alert(this.name + "正在" + this.classRoom + "好好学习!"); } }
-
简写对象定义形式
methods:{ study(){ alert(this.name + "正在" + this.classRoom + "好好学习!"); } }
-
面向数据编程
Vue指令
- 作用: 编写模板文件使用
-
v-html(操作普通文本)
- 作用:解析标签,将变量内容存放到标签的文本处
- {{}}:直接绑定变量并将数据直接展示在符号出=处
-
v-bind(操作标签的属性值)【attr,prop】
-
普通形式
<a v-bind:href="url">百度一下</a>
-
简写形式
<a :href="url">百度一下</a>
-
用法
- 标签中需要的属性前加上冒号
- 值是vue中data里面的变量
-
-
条件显示指令
- v-if
- v-else-if
- v-else
- v-show
- 使用这个指令元素依然会被加载是否展示痛display属性决定
-
循环指令
-
v-for
-
用法
- 写在对应元素上即可遍历生成多个该元素
<li v-for="name in names">{{name}}</li>
-
-
v-on, @(at)
-
使用
- 冒号/@之后的名称是事件名称
- 值:是vue对象中methods的方法
<button v-on:click="change()">改变div的内容</button> <button @click="change()">改变div的内容</button>
-
-
v-model
-
作用:将变量和输入框进行双向绑定,变量改变了之后输入框会改变,反之亦然
-
使用
<input type="text" name="username" v-model="username">
-
Element-UI 使用
- 导包
- css文件导入
- 先导入vue的js文件
- 导入element-ui自己的js
- 使用
- 编写模板(vue)
- 拷贝对应需要的组件到模板中
- 初始化Vue实列
基础布局
- 概念
- 行
- 列
- 划分
- 每一个行一共24分
- 所有的el-col的span属性指定每一列的比例,数字之和24
Form表单(以实体为单位传递数据)
-
- 其中的prop属性指定的是form中的rules的属性名称
- 和实体类中的属性名相同
-
- model: 指定实体对象,data中的属性
- rules: 指定校验规则, 也是data中的属性
- ruleForm:相当于id
-
rules规则信息
name1: [ // required:是否必须, message:如果不满足校验条件显示内容,trigger:什么时候触发校验 { required: true, message: '请输入活动名称123132', trigger: 'blur' }, // { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' } ]
form表单拷贝
-
标签内容可以直接完全拷贝
<el-form ref="form" :model="form" label-width="80px"> <el-form-item label="活动名称"> <el-input v-model="form.name"></el-input> </el-form-item> <el-form-item label="活动区域"> <el-select v-model="form.region" placeholder="请选择活动区域"> <el-option label="区域一" value="shanghai"></el-option> <el-option label="区域二" value="beijing"></el-option> </el-select> </el-form-item> </el-form>
-
数据拷贝
-
自己创建vue实列
-
拷贝别人data函数中的返回值
new Vue({ el:"#div", data:{ form: { name: '', region: '', date1: '', date2: '', delivery: false, type: [], resource: '', desc: '' } } });
form 表单问题
-
函数问题(箭头函数,lambda表达式一个意思)
(valid) => { if (valid) { alert('submit!'); } else { console.log('error submit!!'); return false; } }
-
箭头函数和普通函数一样
function(valid){ if (valid) { alert('submit!'); } else { console.log('error submit!!'); return false; } }
-
vue中的获取元素
this.$refs["student"]
-
拷贝elementui需要注意
- 拷贝data时注意只需要data函数中return语句返回的对象即可
- 方法直接拷贝methods
-
表格
- 指定表格对象data,他指定一个数组
- 它里面的prop属性指定每一个行的属性名