Vue框架简介

Vue是一套构建用户界面的框架, 开发只需要关注视图层, 它不仅易于上手,还便于与第三方库或既有项目的整合。是基于MVVM(Model-View-ViewModel)设计思想。提供MVVM数据双向绑定的库,专注于UI层面

 
vue设计思想

View就是DOM层,ViewModel就是通过new Vue()的实例对象,Model是原生js。开发者修改了DOM,ViewModel对修改的行为进行监听,监听到了后去更改Model层的数据,然后再通过ViewModel去改变View,从而达到自动同步。

Vue核心思想

1.数据驱动

 
数据驱动

数据驱动(数据双向绑定), 在Vue中,Directives对view进行了封装,当model中的数据发生变化时,Vue就会通过Directives指令去修改DOM,同时也通过DOM Listener实现对视图view的监听,当DOM改变时,就会被监听到,实现model的改变,从而实现数据的双向绑定。

2.组件化

组件化就是实现了扩展HTML元素,封装可用的代码。

1、页面上每个独立的可视/可交互区域视为一个组件。

2、每个组件对应一个工程目录,组件所需的各种资源在这个目录下就近维护。

3、页面不过是组件的容器,组件可以嵌套自由组合形成完整的页面

vue项目目录结构

 
目录结构

(加粗的常会修改到)

--build项目构建(webpack)相关代码

--config配置目录,包括端口号等。我们初学可以使用默认的。

--node_modulesnpm 加载的项目依赖模块

--src这里是我们要开发的目录,基本上要做的事情都在这个目录里。里面包含了几个目录及文件:App.vue: 项目入口文件,我们也可以直接将组件写这里,而不使用 components 目录。main.js: 项目的核心文件。引用组件时需要修改。

--static静态资源目录,如图片、字体等。

--test初始测试目录,可删除

--.xxxx文件这些是一些配置文件,包括语法配置,git配置等。

--index.html首页入口文件,你可以添加一些 meta 信息或统计代码啥的。

--package.json项目配置文件。

--README.md项目的说明文档,markdown 格式

Vue项目构建命令

npm  install  安装项目依赖包

npm  run dev/npm  run  serve  启动项目

 
 

Vue常用命令

与写html页面一样,只是都是用组件。里面用到的<el-radio>就是elment-ui提供的组件。相当于<radio>按钮选择直接使用就可以,跟html里用法一样。

 
页面代码实例

数据展示命令:

v-html、v-show、v-if、v-for等等,例如v-for命令相当于html里的for循序遍历List中的数据,v-if命令相当于if判断满足条件执行,v-show相当于html里的disable参数。v-html将数据里定义的html页面赋值给view

数据绑定最常见的形式就是使用 {{变量名}}(双大括号)的文本赋值;变量即是后台返回的数据。

 
v-for命令

绑定按钮事件:

@click可以定义一个事件函数

 
定义事件

将事件写到methods包含的大括号内

 
定义事件

Vue路由(Vue-Router)

控制页面的局部跳转刷新,相当于MVC框架中的controller中的定义的@requestMapping注解配置跳转页面

路由配置文件在项目中的src目录下

 
路由在项目中的配置

Element-UI使用

项目集成

 
第一步引入依赖
 
 
第二步-main函数引入

使用方法同layui,使用比layui厉害

常用的组件总结:

<el-input>标签相当于input框;

<el-radio>标签相当于radio框;

<el-chekbox>标签相当于chekbox框;

<el-upload>标签相当于file上传文件;

<el-form>定义表单,<el-form-item>定义表单中的项;

<el-table></el-table>定义表格相当于table,<el-table-column>定义一行,相当于<td>,可以绑定数据,动态显示表格

总的来说,就是将原有的html标签封装了一遍,使用方法大同小异。例如:点击事件的定义不同

 
(表单实例代码如图)
 
(表单效果如上图)

最新文章

  1. 【NLP】条件随机场知识扩展延伸(五)
  2. python2不同版本安装json模块
  3. Cocos2d-x 核心概念 - 坐标系(UI.OpenGL.世界坐标系.模型坐标系)
  4. [原]openstack-kilo--issue(六):Authorization Failed: The resource could not be found. (HTTP 404)
  5. checkboxlist 下拉框多选功能 ,模拟dropdownlist带复选框效果
  6. extjs动态改变样式
  7. meate 标签使用介绍
  8. 解决xcode6_beta没有代码提示的方法
  9. Windows 内存架构
  10. Git一张图学习
  11. BZOJ1935: [Shoi2007]Tree 园丁的烦恼
  12. BZOJ 2879 NOI2012美食节
  13. Xcode如何添加字体库--
  14. Java基于opencv实现图像数字识别(三)—灰度化和二值化
  15. Redis主从+KeepAlived实现高可用
  16. Sqlite安装教程
  17. (转)Springboot邮件服务
  18. Linux内核分析实验五
  19. STN1170 Multiprotocol OBD to UART Interpreter
  20. [STAThread] 作用

热门文章

  1. hdjs---1、hdjs爬坑杂记
  2. legend3---lavarel常用artisan命令操作
  3. 数组 Kotlin(5)
  4. 2.进行model和log的路径创建
  5. C++类继承方式及实践
  6. vscode + php+ftp
  7. django-登录页面添加验证码
  8. 阶段3 2.Spring_07.银行转账案例_4 编写事务管理工具类并分析连接和线程解绑
  9. java并发编程 线程基础
  10. const char* to char*(当函数传递参数时)