Promise 、async、await 的学习
js的同步和异步首先我们需要复习一下 js 的同步和异步
JavaScript是一门单线程的语言,因此,JavaScript在同一个时间只能做一件事,单线程意味着,如果在同个时间有多个任务的话,这些任务就需要进行排队,前一个任务执行完,才会执行下一个任务,为了防止 ajax 这类任务执行等待时间过长,javascrpit 就设计了同步和异步任务
同步任务
同步任务是指在主线程上排队执行的任务,只有前一个任务执行完毕,才能继续执行下一个任务,当我们打开网站时,网站的渲染过程,比如元素的渲染,其实就是一个同步任务
异步任务
异步任务是指不进入主线程,而进入任务队列的任务,只有任务队列通知主线程,某个异步任务可以执行了,该任务才会进入主线程,当我们打开网站时,像图片的加载,音乐的加载,其实就是一个异步任务
Es6的Promise异步规范在 Es6 的 Promise 出来之前,我们一般都是使用回调函数来处理异步任务 ,在Promise规范提出后,异步编程就变的相对简单一些
Promise是一个对象,对象和函数的区别就是对象可以保存状态,函数不可以(闭包除外)
Promise并未剥夺 ...
vue入门学习
Watch侦听器watch侦听器允许开发者监视数据的变化,从而对数据的变化做出特定的操作
所有的侦听器,都应该被定义到 watch 节点下,侦听器本质上是一个函数
一个常用的场景是输入用户名后发送ajax请求判断用户名是否重复,下面的案例在控制台看代码输出
方法格式的侦听器
要监视哪个数据的变化,就把数据名作为方法名
侦听器接受两个参数,旧的数据值和新的数据值,其中新的数据值是第一个参数
123456789101112131415161718192021222324<div id="app"> <input type="text" v-model="username"></div><script> const vm = new Vue({ el: '#app', data: { username: 'admin' }, // 所有的侦听器,都应该被定义到 watch ...
Ubuntu20文件桌面启动
打开终端(ctrl+alt+t)键入
1cd /usr/.local/share/applications
usr 是我们自己的用户名
新建.desktop文件, sudo gedit XXX.desktop,启动文件一般包含下面几项
12345678910[Desktop Entry]Name= #程序名字Comment= #程序注释Exec= #可执行文件的路径Terminal= #是否打开终端Type= #应用类型,常用有Application等Icon= #图标,支持png 格式图片Categories= #分类Path= # 设置当前工作目录X-GNOME-Autostart-enabled=true # 设置开机自启动
默认当前工作目录是/home/用户名
给文件权限 ...
Vue2过滤器的学习
过滤器过滤器(Filters) 是vue为开发者提供的功能,用于文本的格式化,过滤器可以在 插值表达式 和 v-bind 属性绑定使用
过滤器应该被卸载 JavaScript 表达式的尾部,由| 符号来调用
快速使用
代码
效果
12345678910111213141516171819202122232425262728293031323334353637383940<div id="app"> <p>message 的值是:{{ message | capi }}</p></div><div id="app2"> <p>message 的值是:{{ message | capi }}</p></div><script> // 使用 Vue.filter() 定义全局过滤器 ...
vue基本用法
安装 Chrome vue 调试工具打开谷歌应用商店搜索 Vue.js devtools 并添加至 Chrome
在谷歌浏览器扩展程序页面找到刚才添加的扩展程序,点击详情
在下面找到 允许访问文件网址 打开这个设置
在渲染vue页面的时候,打开控制台,可以看到vue选项,就可以开始使用 Vue.js devtools 了
什么是Vue?简介vue是构建用户界面的框架
学习vue,就是在学习vue框架中规定的用法,框架是一套现成的解决方案,程序员只能遵守框架的规范去编写自己的功能。我们需要学习vue的指令,组件,路由,Vuex,vue组件库等
Vue特性
数据驱动视图
vue会监听数据的变化,从而自动重新渲染页面的结构
数据驱动视图是单向的数据绑定
双向数据绑定
js数据的变换会被自动渲染到页面
页面表单变化后不需要手动操作DOM,就可以获取表单的值
MVVM
Model:表示当前页面渲染所依赖的数据源
View:表示当前页面所渲染的DOM结构
ViewModel:表示vue的实例,他是MVVM的核心
data中的所有属性,最后都出现在了vm上
vm上所有属性,以及Vu ...
博客折腾记录
写在之前
在一开始我是在CSDN上写博客,记录一些学习过程,由于每次写完 markdown 再发布的过程比较麻烦,又不想花大价钱租服务器,所以暂时想到了是使用 github page 来做个人博客,进行学习过程的记录
开始折腾
有一个github账号这方面的相关博客和教程比较多,这里就不再过多赘述了,其实一步一步来就可以
放一个官网链接 github传送门
创建github仓库
上面两种方式都可以进入仓库创建界面,进入后显示如下
这里需要注意,仓库的名字必须是 XXX.github.io , 其中XXX 要和你前面的用户名相同,仓库的discription 自己想写什么就写什么,就的对仓库的一个描述,最后点击 Create repository 就可以了
安装相关软件
安装git工具
点击上方 logol 传送去git官网,选择和系统相符的git版本进行下载安装,安装过程中想改安装位置的可以改一下,其他的一直下一步就好了
如果
安装好后,我们右键可以看到 git bash 和 git gui 就已经安装好了
对于git的使用和安装可以看 廖雪峰老 ...
webpack学习
什么是webpackwebpack是前端工程化的具体解决方案。
主要功能:提供了友好的前端模块化开发支持,以及代码压缩混淆、处理浏览器端javaScript的兼容性、性能优化等强大的功能
快速使用 webpack
新建项目空目录,运行 npm init -y 命令,初始化包管理配置文件 package.json
新建src源码目录
新建src-index.html 首页文件 和 src->index.js脚本文件
初始化首页基本的结构
运行npm install jquery -S 安装 jQuery 这个命令执行后,会把这个包和对应的版本记录到 package.json 中的 dependencies 节点下
在上面的五个步骤结束后,会产生下面这样的目录结构
1234567- quickwebpack |- node_modules |- src |- index.js |- index.html |- package-lock.json |- package.json
我们在 index.html ...