Vue.js官网版教程

前言

这是vue官网案例学习,记录一下

序言 vue.js介绍

  • Vue.js 渐进式 JavaScript 框架
  • https://learning.dcloud.io/#/?vid=0

Xnip2021-03-14_23-00-28

Xnip2021-03-14_23-02-22

第1节 安装与部署

  • https://learning.dcloud.io/#/?vid=1
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<!-- 生产环境版本,优化了尺寸和速度 -->
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
<!-- 线下版本开发 -->
<script src="vue.js" type="text/javascript" charset="utf-8"></script>

第2节 创建第一个vue应用

  • https://learning.dcloud.io/#/?vid=2
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script src="./vue.js" type="text/javascript" charset="utf-8"></script></head><body><div id="app">{{message}}--{{name}}</div><script type="text/javascript">var vm=new Vue({el:'#app',data:{message: 'Hello ',name : " Vue"}})console.log(vm);</script></body>
</html>

第3节 数据与方法

  • https://learning.dcloud.io/#/?vid=3
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script src="./vue.js" type="text/javascript" charset="utf-8"></script></head><body><div id="app">{{a}}</div><script type="text/javascript">var data = {a: 1};var vm = new Vue({el: "#app",data: data});vm.$watch('a', function(newVal, oldVal) {console.log(newVal, oldVal);})vm.$data.a = "test...."</script></body>
</html>

第4节 生命周期

  • https://learning.dcloud.io/#/?vid=4
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app">{{msg}}
</div>
<script type="text/javascript">
var vm = new Vue({el : "#app",data : {msg : "hi vue",},//在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。beforeCreate:function(){console.log('beforeCreate事件配置之前被调用');},/* 在实例创建完成后被立即调用。在这一步,实例已完成以下的配置:数据观测 (data observer),属性和方法的运算,watch/event 事件回调。然而,挂载阶段还没开始,$el 属性目前不可见。 */created:function(){console.log('create在实例创建完成后被立即调用');},//在挂载开始之前被调用:相关的渲染函数首次被调用beforeMount:function(){console.log('beforeMount在挂载开始之前被调用');},//el 被新创建的 vm.$el 替换, 挂在成功mounted:function(){console.log('mounted挂在成功');},//数据更新时调用beforeUpdate:function(){console.log('beforeUpdate数据更新时调用');},//组件 DOM 已经更新, 组件更新完毕updated:function(){console.log('updated组件更新完毕');}
});
</script>
</body>
</html>

第5节 模板语法-插值

  • https://learning.dcloud.io/#/?vid=5
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app">{{msg}}<p>html:{{html}}</p><p v-html="html"></p><div v-bind:class="color">test---</div><p>{{number+1}}</p><p>{{ 1 == 1 ? 'Yes' : 'No' }}</p><p>{{msg}}</p><p>{{msg.split('')}}</p><p>{{msg.split('').reverse()}}</p><p>{{msg.split('').reverse().join('')}}</p>
</div>
<script type="text/javascript">var vm = new Vue({el : "#app",data : {msg : "hi vue",html:'<span style="color:red">red</span>',color:'blue',number:10,ok:1,msg:"vue"}});
</script>
<style type="text/css">.red{color:red;}.blue{color:blue; font-size:100px;}
</style>
</body>
</html>

第6节 模板语法-指令

  • https://learning.dcloud.io/#/?vid=6
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script src="./vue.js" type="text/javascript" charset="utf-8"></script></head><body><div id="app"><p v-if="seen">IF看到我了</p><a v-bind:href="url">...</a><div @click="click1"><div @click.stop="click2">click me</div></div></div><script type="text/javascript">var vm=new Vue({el:'#app',data:{seen : false,url : "https://cn.vuejs.org/v2/guide/syntax.html#%E6%8C%87%E4%BB%A4"},methods:{click1:function(){console.log('click1');},click2:function(){console.log('click2');},}})</script></body>
</html>

第7节 class与style绑定

  • https://learning.dcloud.io/#/?vid=7
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app"><div class="test" v-bind:class="[ isActive ? 'active' : '', isGreen ? 'green' : '']" style="width:200px; height:200px; text-align:center; line-height:200px;">hi vue</div><div :style="{color:color, fontSize:size, background: isRed ? '#d291ff' : ''}">hi vue</div>
</div>
<script type="text/javascript">
var vm = new Vue({el : "#app",data : {isActive : true,isGreen : true,color : "#FFFFFF",size : '50px',isRed : true}
});
</script>
<style>
.test{font-size:30px;}
.green{color:#00FF00;}
.active{background:#FF0000;}
</style>
</body>
</html>

第8节 条件渲染

  • https://learning.dcloud.io/#/?vid=8
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app"><div v-if="type === 'A'">A</div><div v-else-if="type === 'B'">B</div><div v-else-if="type === 'C'">C</div><div v-else>Not A/B/C</div><h1 v-show="ok">Hello!</h1>
</div>
<script type="text/javascript">
var vm = new Vue({el : "#app",data : {type : "B",ok : true}
});
</script>
<style type="text/css"></style>
</body>
</html>

第9节 列表渲染

  • https://learning.dcloud.io/#/?vid=9
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script src="./vue.js" type="text/javascript" charset="utf-8"></script></head><body><div id="app">{{message}}--{{name}}<ul><li v-for="item,index in items":key="index">{{index}}--{{item.message}}</li></ul><ul><li v-for="value,key in object">{{key}}:{{value}}</li></ul></div><script type="text/javascript">var vm=new Vue({el:'#app',data:{message: 'Hello ',name : " Vue",items:[{message:'foo'},{message:'bar'}],object:{title:'title',author:'Doe',push:'2020-12-20'}}})console.log(vm);</script></body>
</html>

第10节 事件绑定

  • https://learning.dcloud.io/#/?vid=10
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script src="./vue.js" type="text/javascript" charset="utf-8"></script></head><body><div id="app">{{message}}--{{name}}<button v-on:click="count += 1">数值:{{count}}</button><button type="button" v-on:click="greet('abc',$event)">Greet</button></div><script type="text/javascript">var vm=new Vue({el:'#app',data:{count:0,message: 'Hello ',name : " Vue"},methods:{greet:function(str,e){console.log(str);console.log(e);}}})console.log(vm);</script></body>
</html>

第11节 表单输入绑定

  • https://learning.dcloud.io/#/?vid=11
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app"><div id="example-1"><input v-model="message" placeholder="edit me"><p>Message is: {{ message }}</p><!--  --><textarea v-model="message2" placeholder="add multiple lines"></textarea><p style="white-space: pre-line;">{{ message2 }}</p><br /><!--  --><div style="margin-top:20px;"><input type="checkbox" id="jack" value="Jack" v-model="checkedNames"><label for="jack">Jack</label><!--  --><input type="checkbox" id="john" value="John" v-model="checkedNames"><label for="john">John</label><!--  --><input type="checkbox" id="mike" value="Mike" v-model="checkedNames"><label for="mike">Mike</label><!--  --><br><span>Checked names: {{ checkedNames }}</span></div><!--  --><div style="margin-top:20px;"><input type="radio" id="one" value="One" v-model="picked"><label for="one">One</label><br><!--  --><input type="radio" id="two" value="Two" v-model="picked"><label for="two">Two</label><br><!--  --><span>Picked: {{ picked }}</span></div><!--  --><button type="button" @click="submit">提交</button></div></div>
<script type="text/javascript">
var vm = new Vue({el : "#app",data : {message : "test",message2 :"hi",checkedNames : ['Jack', 'John'],picked : "Two"},methods: {submit : function () {console.log(this.message);console.log(this.message2);console.log(this.picked);console.log(this.checkedNames);}}
});
</script>
<style type="text/css"></style>
</body>
</html>

第12节 组件基础

  • https://learning.dcloud.io/#/?vid=12
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app"><button-counter title="title1 : " @clicknow="clicknow"><h2>hi...h2</h2></button-counter><button-counter title="title2 : "></button-counter>
</div>
<script type="text/javascript">
Vue.component('button-counter', {props: ['title'],data: function () {return {count: 0}},template: '<div><h1>hi...</h1><button v-on:click="clickfun">{{title}} You clicked me {{ count }} times.</button><slot></slot></div>',methods:{clickfun : function () {this.count ++;this.$emit('clicknow', this.count);}}
})
var vm = new Vue({el : "#app",data : {},methods:{clicknow : function (e) {console.log(e);}}
});
</script>
<style type="text/css"></style>
</body>
</html>

第13节 组件注册

  • https://learning.dcloud.io/#/?vid=13
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="app"><button-counter></button-counter><test></test>
</div>
<script type="text/javascript">
Vue.component('button-counter', {props: ['title'],data: function () {return {}},template: '<div><h1>hi...</h1></div>',methods:{}
})
var vm = new Vue({el : "#app",data : {},methods:{clicknow : function (e) {console.log(e);}},components:{test : {template:"<h2>h2...</h2>"}}
});
</script>
<style type="text/css"></style>
</body>
</html>

第14节 单文件组件

  • https://learning.dcloud.io/#/?vid=14
  • vue ui

安装 npm

npm 全称为 Node Package Manager,是一个基于Node.js的包管理器,也是整个Node.js社区最流行、支持的第三方模块最多的包管理器。

npm -v

由于网络原因 安装 cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

安装 vue-cli

cnpm install -g @vue/cli

安装 webpack

webpackJavaScript 打包器(module bundler)

cnpm install -g webpack

第15节 免终端开发vue应用

  • https://learning.dcloud.io/#/?vid=15

其他

1、免终端开发Vue应用

uni-app + HBuilder X

都是DCloud公司出品的,前者是框架,后者是ide,它们互相搭配,使得基于vue.js开发项目变的更简单和高效!让开发者把更多精力放在业务逻辑上

2、cli方式

cli 是命令行,一个黑色的终端窗体,在里面敲击命令,这要求开发者需要了解终端、node、npm等很多知识,不然在以下方面会困难重重:

1、搭建项目环境

2、运行和发布项目

3、配置less/sass/typescript/babel等预编译器

4、安装各种流行的组件库

3、uni-app项目创建介绍

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6thgAh1v-1616496360426)(/Users/mac/Desktop/008eGmZEly1got0l5qgn6j31960c4n0a.png)]

4、v-if VS v-show

Xnip2021-03-15_19-12-22

5、vuecli的GUI化管理界面

vue ui

https://jingyan.baidu.com/article/624e745989d0c975e9ba5a0b.html

https://learning.dcloud.io/#/?vid=14

Xnip2021-03-23_18-41-56

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/252559.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

0基础js新手JavaScript学习入门教程

1 下载所需工具 chrome&#xff0c;谷歌开发的一款浏览器。vscode&#xff0c;微软开发的一款写代码的工具。 JavaScript代码需要浏览器来运行&#xff0c;用来控制网页的各种行为。 浏览器地址栏访问的是网页&#xff0c;因此JavaScript需要放到网页里。 2 先创建1个网页 …

简单粗暴的JavaScript学习教程,前端入门的不二之选!

JavaScript 是网景&#xff08;Netscape&#xff09;公司开发的一种基于客户端浏览器、面向&#xff08;基于&#xff09;对象、事件驱动式的网页脚本语言。JavaScript语言的前身叫作Livescript。 JavaScript的特点&#xff1a; 简单、易学、易用&#xff1b;跨平台&#xff…

对于初学者的JavaScript 教程

JavaScript是世界上最流行的轻量级、解释型编译编程语言。它也被称为网页的脚本语言。它以开发网页而闻名&#xff0c;许多非浏览器环境也使用它。JavaScript 可用于客户端开发以及服务器端开发。 JavaScript 可以通过两种方式添加到您的 HTML 文件中&#xff1a; 内部 JS&…

node.js入门教程(一)

1. 初识 Node.js Node.js 是 一个基于 Chrome V8 引擎的 JavaScript 运行环境 。 Node.js 的官网地址&#xff1a; https://nodejs.org/zh-cn/ ① 浏览器 是 JavaScript 的 前端运行环境 。 ② Node.js 是 JavaScript 的 后端运行环境 。 ③ Node.js 中 无法调用 DOM 和…

最通俗易懂的JavaScript入门教程

前言&#xff1a;“成功没有捷径&#xff0c;脚踏实地一步一个脚印&#xff0c;该来的总会来&#xff0c;不好高骛远&#xff0c;不急功近利&#xff0c;付出总会有回报&#xff0c;不管处于哪个阶段&#xff0c;都要一步一个脚印&#xff0c;踏实的走好每一步&#xff01;” 你…

Vue.js入门教程(适合初学者)

Vue.js入门教程 Vue官网网址&#xff1a;Vue.js 中文网 Vue.js Vue.js是渐进式JavaScript 框架&#xff0c;是一套构建用户界面的渐进式框架。也可以说Vue.js 是一个用来构建网页界面的 JavaScript 库。 Vue的常用使用方式有两种&#xff1a; 一、使用<script>标签&am…

尚硅谷JavaScript高级教程(javascript实战进阶)学习笔记

前言 这个是我学习过程中的笔记&#xff0c;分享给大家&#xff0c;希望对大家有用。 学习内容是尚硅谷JavaScript高级教程(javascript实战进阶)&#xff0c;这里是视频链接。 我在前面有两篇对于web前端HTML和CSS的学习笔记&#xff0c;有需要的可以看一下哈。 黑马程序员版…

Threejs入门教程

一、本地搭建Threejs官方文档网站 1.官网地址&#xff1a;https://github.com/mrdoob/three.js 下载压缩包并解压或使用git clone 若github过慢&#xff0c;则使用gitee对应网址&#xff1a;three.js: mrdoob/three.js 同步库 2.目录解析 3.启动方式 在three.js项目根目录下…

Javascript机器学习教程

Javascript机器学习教程 使用 Javascript 和 TensorflowJS 通过动手项目从头开始掌握机器学习 课程英文名&#xff1a;Machine Learning with Javascript 此视频教程共1.0小时&#xff0c;中英双语字幕&#xff0c;画质清晰无水印&#xff0c;源码附件全 下载地址 课程编号…

CAD梦想画图中删除命令

“删除”命令用于删除在CAD作图过程中的图线和多余的图线。用户既可以先选择对象再执行“删除”&#xff0c;也可以先执行“删除”命令再选择对象。选择“删除”命令后&#xff0c;CAD屏幕上的十字光标将会变成一个拾取框&#xff0c;选择需要删除的对象&#xff0c;按enter键。…

CAD怎么删除图块注释?删除CAD图块注释步骤

CAD设计过程中&#xff0c;有时候会在图纸中添加许多注释&#xff0c;如&#xff1a;文字注释&#xff0c;图块注释&#xff0c;标注样式注释等。当需要删除图纸中的CAD图块注释时&#xff0c;你知道该如何操作吗&#xff1f;本节课程小编就来给大家分享一下浩辰CAD软件中删除C…

AutoCAD单独卸载,不影响其他软件,CAD 2021安装失败,怎么完全彻底卸载删除清理干净CAD 2021各种残留注册表和文件?

AIOC超级工具箱 AIOC超级工具箱是专门为了针对Autodesk类软件卸载不干净而导致Autodesk安装失败问题进行研发的Autodesk一键卸载工具。现在虽然360或一些卸载软件提供了强力卸载Autodesk的工具&#xff0c;可以将Autodesk注册表和一些Autodesk目录的Autodesk残留信息删除&…

CAD卸载重新安装方法,使用清理卸载工具完全彻底删除干净CAD各种残留注册表和文件。

CAD没有按照正确方式卸载&#xff0c;导致CAD安装失败。现在虽然360或者其他一些卸载软件提供了强力卸载清理CAD的工具&#xff0c;可以将CAD注册表和一些CAD目录的CAD残留信息删除干净&#xff0c;但仍不能确保将CAD所有相关dll程序文件、exe可执行文件和注册表信息全部彻底删…

CAD 卸载工具,完美彻底卸载清除干净cad各种残留注册表和文件

CAD提示安装未完成&#xff0c;某些产品无法安装该怎样解决呢&#xff1f;&#xff0c;一些朋友在win7或者win10系统下安装CAD失败提示CAD安装未完成&#xff0c;某些产品无法安装&#xff0c;也有时候想重新安装CAD的时候会出现本电脑windows系统已安装CAD&#xff0c;你要是不…

【AutoCAD 卸载工具,完全彻底删除清理干净AutoCAD各种残留注册表和文件】

AutoCAD卸载工具&#xff0c;完全彻底删除干净AutoCAD各种残留注册表和文件。AutoCAD安装失败&#xff0c;怎么完全彻底删除清理干净AutoCAD各种残留注册表和文件呢&#xff1f;有些同学想把AutoCAD重新安装&#xff0c;但是AutoCAD安装失败显示失败&#xff0c;有时AutoCAD安装…

CAD单独卸载,不影响其他软件,CAD专用卸载修复工具,一键完全彻底卸载删除CAD软件的专用卸载工具

AIOC超级工具箱 小伙伴是不是遇到 CAD/3dmax/maya/Revit/Inventor 安装失败或者安装不了的问题了呢&#xff1f;AUTODESK系列软件着实令人头疼&#xff0c;CAD/3dmax/maya/Revit/Inventor安装失败之后不能完全卸载&#xff01;&#xff01;&#xff01;&#xff08;比如maya&a…

cad 2020安装失败,怎么完全彻底卸载删除清理干净cad 2020各种残留注册表和文件? 【转载】

cad 2020卸载工具&#xff0c;完全彻底删除干净cad 2020各种残留注册表和文件。cad 2020安装失败&#xff0c;怎么完全彻底删除清理干净cad 2020各种残留注册表和文件呢&#xff1f;有些同学想把cad 2020重新安装&#xff0c;但是cad 2020安装失败显示失败&#xff0c;有时cad …

CAD 残留文件和注册表如何完全彻底卸载删除干净【转载】

CAD 残留文件和注册表如何完全彻底卸载删除干净&#xff1f;cad安装失败&#xff0c;怎么完全彻底删除清理干净cad各种残留注册表和文件呢&#xff1f;有些同学想把cad重新安装&#xff0c;但是cad安装失败显示失败&#xff0c;有时cad安装到一半就显示失败&#xff0c;然后会问…

CAD卸载方法,如何完全彻底卸载删除清理干净CAD各种残留注册表和文件? 【转载】

CAD卸载方法&#xff0c;完全彻底删除干净CAD各种残留注册表和文件。CAD安装失败&#xff0c;怎么完全彻底删除清理干净CAD各种残留注册表和文件呢&#xff1f;有些同学想把CAD重新安装&#xff0c;但是CAD安装失败显示失败&#xff0c;有时CAD安装到一半就显示失败&#xff0c…

cad卸载_如何卸载干净CAD?

小伙伴是不是遇到 CAD/3dmax/maya/Revit/Inventor 安装失败或者安装不了的问题了呢&#xff1f;AUTODESK系列软件着实令人头疼&#xff0c;CAD/3dmax/maya/Revit/Inventor安装失败之后不能完全卸载&#xff01;&#xff01;&#xff01;&#xff08;比如maya&#xff0c;cad&am…