vue 框架:

--构建虚拟的DOM结构,(内存内改变对象)- 操作数据的变化

框架介绍

	可以独立完成前后端分离式web项目的JavaScript框架

优点:
三大主流框架之一:Angular React Vue
先进的前端设计模式:MVVM
可以完全脱离服务器端,以前端代码复用的方式渲染整个页面:组件化开发 特点:
单页面web应用
数据驱动
数据的双向绑定
虚拟DOM 使用vue框架:
下载:https://cn.vuejs.org/v2/guide/installation.html
开发版本: 包含完整的警告和调试模式 (.js)
生产版本: 删除了警告 (min.js) 引入:
<script src="https://cdn.jsdelivr.net/npm/vue"></script> 包含了有帮助的命令行警告 或 <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> 优化了尺寸和速度 官网学习(api):
https://cn.vuejs.org/v2/api/

基础格式

基本结构:

<script src="js/vue.js"></script>   // 导入vue 环境
<script>
new Vue({
el: "#app",
data: {
showBtn: true
},
methods: {
handleClick: function() {
console.log("Clicked!");
}
}
});
</script> el : 指定dom标签容器的选择器
Vue就会管理对应的标签及其子标 (body,html除外) data: 对象或函数类型
指定初始化状态属性数据的对象
vm也会自动拥有data中所有属性
页面中可以直接访问使用
数据代理: 由vm对象来代理对data中所有属性的操作(读/写) methods: 包含多个方法的对象
供页面中的事件指令来绑定回调
回调函数默认有event参数, 但也可以指定自己的参数
所有的方法由vue对象来调用, 访问data中的属性直接使用 this.xxx

插值表达式:

-->能够为变量进行简单的运算,字符串方法。(一步能够运算出来)
vue变量:被称为插值表达式  {{ vue变量 }} <div id="app">
<p> {{ msg }}</p>
<p> {{ num *10 }}</p>
<p> {{ msg[1] }}</p>
<p> {{ msg.split('') }}</p>
</div> <script src="js/vue.js"></script>  
<script>    
new Vue({
el: '#app', data: {
num: 10,
msg: 'message'
}

文本指令:

指令:
指令(Directives)是Vue模板中最常用的一项功能,它带有前缀v-,能帮我们快速完成DOM操作、循环渲染、显示影藏 {{ }} :将内部元素当成纯文本输出
v-text:解析文本,作用与{{}}一样 (原样输出)
v-html:解析html (能够解析html语法)
v-once: 处理的标签只能被解析一次 <body>
<div id="app"> <p>{{hello}}</p>
<p v-text = 'hello'></p>
<p v-html = 'hello'></p>
</div>
</body>
<script src="vue.js"></script>
<script>
new Vue({
el:'#app',
data:{
hello:'<span>hello world</span>'
}
})
</script>

事件指令:

<!-- 完整语法 -->
<a v-on:click="xxxx">...</a> <!-- 缩写 -->
<a @click="xxxx">...</a> v-on 指令添加一个事件监听器,通过它调用在 Vue 实例中定义的方法:
  v-on:事件名='变量名' 实例化Vue里面 methods关键字 为挂载点提供事件的 里面写你的: 变量名:function <script>
new Vue({
el:'#app',
data:{
msg:'vue渲染的内容'
},
methods:{ //为挂载点提供事件的
clickAction:function () {
alert(123)
}
}
})
</script>

属性指令:

<!-- 完整语法 -->
<a v-bind:href="url"></a> <!-- 缩写 -->
<a :href="url"></a> --元素节点的 style特性和 Vue 实例的 v_style 属性保持一致” -动态更新HTML元素上的属性

小结:

1.vue通过 v- 指令来控制标签的属性

2.vue通过 变量 数据驱动页面(操作页面内容)

js 补充(面向对象):

js 函数:

   function f1() {
console.log('f1 run');
}
f1(); 箭头函数: let f3 = () => { // 没有参数
console.log('f3 run');
};
f3(); // 如果箭头函数有多个参数,有返回值
let f4 = (n1, n2) => n1 + n2;
let res = f4(10, 25);
console.log(res); // 如果箭头函数参数列表只有一个,可以省略()
let f5 = num => num * 10;
res = f5(10);
console.log(res); 定义变量区别: d = 45; //全局变量
const c = 30 ; // 常量 var a = 10 ;
let b = 20 ;
let、const定义的变量不能重复定义,且具备块级作用域
块级作用域: 在一个大括号内(作用范围)
eg:
if (1) {
var a = 10;
let b = 20;
} 定义类:
// 构造函数 == 类
function F2(name) {
this.name = name;
this.eat = function (food) {
console.log(this.name + '在' + food);
}
}
let ff1 = new F2("Bob");
console.log(ff1.name); 总结:
function可以作为类,内部会有this
箭头函数内部没有this
{}里面出现的函数称之为方法: 方法名(){}
在vue 环境内的this : 指父类对象(不是本身对象)

学习vue_01的更多相关文章

  1. vue学习笔记(十)路由

    前言 在上一篇博客vue学习笔记(九)vue-cli中的组件通信内容中,我们学习组件通信的相关内容和进行了一些组件通信的小练习,相信大家已经掌握了vue-cli中的组件通信,而本篇博客将会带你更上一层 ...

  2. 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代

    2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...

  3. Angular2学习笔记(1)

    Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...

  4. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  5. 消息队列——RabbitMQ学习笔记

    消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...

  6. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  7. Unity3d学习 制作地形

    这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...

  8. 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...

  9. 菜鸟Python学习笔记第一天:关于一些函数库的使用

    2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...

随机推荐

  1. ‘Maximum call stack size exceeded’错误的解决方法

    今天打开vue项目,页面空白报了一个错误,错误如下: “Maximum call stack size exceeded” 错误的字面意思是:超出最大调用堆栈大小. 然后就是各种百度,找错误原因.百度 ...

  2. Ubuntu18.04下修改快捷键

    Ubuntu下修改快捷键 Intelij Idea在Ubuntu下的快捷键几乎和windows差不多,最常用的一个快捷键与系统冲突: Ctrl + Alt + T idea是surround with ...

  3. 数据迁移最快方式,多线程并行执行 Sql插入

    前言: 由于系统升级,新开发的系统对数据验证,及数据关联做了很多优化,现需要将原历史版本的数据迁移到新系统中:原数据库大约有 1千多万数据,大约 50个表. 历史数据库命名为:A. 新系统库暂命名为 ...

  4. mysql批量更新数据(性能优化)--第二种方式

    Spring+Mybatis 手动控制事务 参考: https://blog.csdn.net/qq_41750175/article/details/87621170 public boolean ...

  5. Window权限维持(四):快捷方式修改

    Windows快捷方式包含对系统上安装的软件或文件位置(网络或本地)的引用.自从恶意软件出现之初,便已将快捷方式用作执行恶意代码以实现持久性的一种方法.快捷方式的文件扩展名是.LNK,它为红队提供了很 ...

  6. Java匹马行天下之学编程的起点——走进编程的殿堂

    学编程的起点——走进编程的殿堂 前言: 知其然,知其所以然,努力固然重要,但是思维的提升会让你事半功倍,我会用我花费时间换来的“思维”带更多的朋友入门,让你们明明白白学编程,学编程,不迷茫. 转变思维 ...

  7. Java生鲜电商平台-物流动态费率、免运费和固定运费设计与架构

    Java生鲜电商平台-物流动态费率.免运费和固定运费设计与架构 说明:物流配送环节常见的有包邮,免运费,或者偏远地区动态费率,还存在一些特殊的情况,固定费率,那么如何进行物流的架构与设计呢? 运费之困 ...

  8. HighChat动态绑定数据 数据后台绑定(四)

    后台绑定数据,直接返回json数据 IList<SummaryHour> adHourData = summarybll.FindList(str); List<, , , , , ...

  9. 深入浅出JVM的锁优化案例

    锁优化 适应性自旋(Adaptive Spinning) 线程阻塞的时候,让等待的线程不放弃cpu执行时间,而是执行一个自旋(一般是空循环),这叫做自旋锁. 自旋等待本身虽然避免了线程切换的开销,但它 ...

  10. SharpGL之Viewport

    视口变换主是将视景体内投影的物体显示到二维的视口平面上. 在计算机图形学中,它的定义是将经过几何变换, 投影变换和裁剪变换后的物体显示于屏幕指定区域内. 前面我们讨论过的透视投影, 正射投影, 它们都 ...