一. 邂逅Vuejs1.1(理解)Vuejs的认识和特点介绍三大主流框:VuejsReactAngular JsVue (读音 /vju?/,类似于 view) Vue是一个渐进式的框架渐进式意味着你可以将Vue作为你应用的一部分嵌入其中,带来更丰富的交互...
一. 邂逅Vuejs
1.1(理解)Vuejs的认识和特点介绍
三大主流框:
- Vuejs
- React
- Angular Js
Vue (读音 /vju?/,类似于 view)
Vue是一个渐进式的框架
- 渐进式意味着你可以将Vue作为你应用的一部分嵌入其中,带来更丰富的交互体验
或者如果你希望将更多的业务逻辑使用Vue实现,那么Vue的核心库及其生态系统
比如Core+Vue-router+Vuex,也可以满足各种各样的需求 - Vue有很多特点和Web开发中常见的高级功能
- 解耦试图和数据
- 可复用的组件
- 前端路由技术
- 状态管理
- 虚拟DOM
具备一定HTTM、CSS、JavaScript基础
Es6
1.2(掌握)Vuejs的安装方式
方式一:直接CDN引入(可以选择引入开发环境版本还是生产环境版本)
< !- - 开发环境版本,包含了有帮助的命令行警告 - - >
<script src = “https://cdn.jsdelivr.net/npm/veu/dist/vue.js”></script>
<! - - 生产环境版本,优化了尺寸和速度 - ->
<script src = https://cdn.jsdelivr.net/npm/vue></script>
方式二:下载和引入
开发环境:https://vuejs.org/js/vue.js
生产环境:https://vuejs.org/js/vue.min.js
方式三:NPM安装
后续通过webpack和CLID 的使用,我们使用该方式
https://vuejs.org/v2/guide/installation.html
不要点击下载,右键链接另存为
这样就有下载下来了一个vue.js文件
vscode
webstrom
1.3 Vue的初体验
- hello Vuejs
- mustache->体验vue响应式
- Vue列表展示
- v-for
- 后面给数组追加元素的时候,新的元素也可以在界面中渲染出来
- Vue计数器案例
- 事件监听:click->methods
响应式,当数据改变时,界面会自动改变,可以打开开发者模式console测试
创建Vue对象时,传入了一些options:{}
- el属性:该属性决定了这个vue对象挂载到哪一个元素上
- data属性:该属性中通常会存储一些数据
- 这些数据可以是我们直接定义出来的
- 也可以来自网络,从服务器加载的
新的指令@click v-on:click
新的属性: methods 该属性用于在Vue对象中定义方法
1.4 Vue中的MVVM
Vue中的MVVM(维基百科)
MVVM(Model-view-viewmodel)是一种软件架构模式。
Data Bindings 数据绑定
1.5 创建Vue实例传入的options
1. el:
类型:string | HTMLElement
作用:决定以后Vue实例会管理哪一个DOM
2. data
类型:Object | Function(组件当中必须是一个函数)
作用:Vue实例对应的数据对象
3. methods
类型:{[key:string] : Function}
作用:定义属于Vue的一些方法,可以在其他地方调用,也可以在指令中使用
4. 生命周期函数
开发中什么时候称为方法,什么时候称为函数
- 方法:method
- 函数:function
- 写在外面 函数
- 定义在类中 方法(一般和实例挂钩)
GitHub -> tag
- release 测试过的稳定版本
代码规范:缩进4个空格
- 2个空格 CLI ->editconfig 2个空格
模板template
- hbuilder 工具 - >代码块设置(看文档说明)
二 . 插值语法
- Mustache{{}} - 双大括号
Mustache:胡子/胡须 - v-once
- v-html
- v-text
- v-pre:{{}}
- v-cloak:斗篷
<div id = "app">
<h2>{{firstName + lastName}}</h2>
<h2>{{firstName + " " + lastName}}</h2>
<h2>{{firstName}} {{lastName}}</h2>
<h2>{{counter * 2}}</h2>
</div>
- v-once
- v-html
- v-text
- v-pre 原封不动输出,不解析
- v-clock
<style>
[v-cloak]{
display:none;
}
</style>
<div id = "app" v-cloak>
<h2 v-once>{{message}}</h2>
<h2 v-text="message"></h2> //不太用,会覆盖
<h2>{{url}}</h2>
<h2 v-html="url"></h2>
<h2 v-pre>{{url}}</h2>
</div>
<script>
//在vue解析之前,div中有一个属性v-cloak
//在vue解析之后,div中没有属性v-cloak
const app = new Vue({
el:"#app",
data:{
message:"hello",
url:'<a href="http://www.baidu.com">百度一下</a>
}
})
//setTimeout(function(){},1000);
</script>
三 . 绑定属性 v-bind
3.1 v-bind动态绑定基本属性
- v-bind:src
- :href
3.2 v-bind动态绑定class
- 对象语法:练习:class=’{类名:boolean}’
- 数组语法
3.3 v-bind动态绑定style
- 对象语法
- 数组语法
四 . 计算属性
- 案例一:firstName+lastName
- 案例二:books -> price
methods和computed看起来都可以实现我们的功能
为什么还要多一个计算属性这个东西
计算属性会进行缓存,如果多次使用时,计算属性只会调用一次
本文标题为:vuejs教程 笔记(一)
基础教程推荐
- 在实战中可能碰到的几种ajax请求方法详解 2023-02-01
- uniapp开发微信小程序自定义顶部导航栏功能实例 2022-10-21
- 使用ajax跨域调用springboot框架的api传输文件 2023-02-23
- Javascript Bootstrap的网格系统,导航栏和轮播详解 2023-08-11
- HTML clearfix清除浮动讲解 2022-11-20
- Ajax发送和接收请求 2022-12-15
- 关于Ajax跨域问题及解决方案详析 2023-02-23
- JS滚动到顶部踩坑解决记录 2023-07-10
- cocos creator游戏实现loading加载页面,游戏启动加载动画 2022-10-29
- Ajax+smarty技术实现无刷新分页 2022-12-15