一切福田,不離方寸,從心而覓,感無不通。

Vue.js学习笔记之修饰符详解

本篇将简单介绍常用的修饰符。 在上一篇中,介绍了 v-model 和 v-on 简单用法。除了常规用法,这些指令也支持特殊方式绑定方法,以修饰符的方式实现。通常都是在指令后面用小数点“.”连接修饰符名称。 一、v-model的修饰符 v-model 是用于在表单表单元素上创建双向数据绑定的指令。在 <input> 和 <textarea> 上,默认通过监听元素的 input 事件来更新绑定的属性值。 为了能明显的看到绑定属性值的变化,需要在Chrome浏览器中安装Vue Devtools扩展程序。当查看Vue开发的页面时,按F12就可以在开发者工具里看到Vue页签。这里需要注意,只有在引用Vue的开发版本文件,即vue.js文件时,Vue Devtools工具才能正常使用。 .lazy 首先在 vm 对象中增加需要绑定的属性 1 2 3 4 5 6 var vm = new Vue({   el: "#app",   data: {     input_lazy: ""   } }); 在页面中的 input 的元素上添加指令 1 2 3 4 <div class="row">   <h2>v-model.lazy</h2>   <input type="text" v-model.lazy="input_lazy" /> </div> 打开页面,开启Vue Devtools,在文本框中输入字符,查看属性值变化 当在文本框输入内容,并且光标焦点没有离开文本框时,属性值没有实时发生变化 而当焦点离开文本框时,属性值发生了变化并与文本框内容保持一致。从这个例子可以看出 .lazy 修饰符延迟了同步更新属性值的时机。即将原本绑定在 input 事件的同步逻辑转变为绑定在 change 事件上。 .number 该修饰符用来将输入内容自动转换成数值。 在 vm 对象里增加一个属性,默认为空字符串 1 2 3 4 5 6 var vm = new Vue({   el: "#app",   data: {     input_number: ""   } }); 在页面的 input 元素上添加指令 1 2 3 4 5 <div class="row">   <h2>v-model.number</h2>   <input type="text" v-model.number="input_number" />   <hr /> […]

龙生   12 Dec 2019
View Details

前端JavaScript规范

JavaScript规范 目录 类型 对象 数组 字符串 函数 属性 变量 条件表达式和等号 块 注释 空白 逗号 分号 类型转换 命名约定 存取器 构造器 事件 模块 jQuery ES5 兼容性 HTML、CSS、JavaScript分离 使用jsHint 前端工具 类型 原始值: 相当于传值(JavaScript对象都提供了字面量),使用字面量创建对象。 string number boolean null undefined

复杂类型: 相当于传引用 object array function

对象 使用字面值创建对象。

不要使用保留字 reserved words 作为键。

数组 使用字面值创建数组。

如果你不知道数组的长度,使用push。

当你需要拷贝数组时使用slice. jsPerf。

使用slice将类数组的对象转成数组。

字符串 对字符串使用单引号 "(因为大多时候我们的字符串。特别html会出现")。

超过80(也有规定140的,项目具体可制定)个字符的字符串应该使用字符串连接换行。 注: 如果过度使用,长字符串连接可能会对性能有影响。

编程时使用join而不是字符串连接来构建字符串。

函数 函数表达式:

绝对不要在一个非函数块里声明一个函数,把那个函数赋给一个变量。浏览器允许你这么做,但是它们解析不同。 注: ECMA-262定义把块定义为一组语句,函数声明不是一个语句。阅读ECMA-262对这个问题的说明。

绝对不要把参数命名为 arguments, 这将会逾越函数作用域内传过来的 arguments 对象。

属性 当使用变量和特殊非法变量名时,访问属性时可以使用中括号(. 优先)。

变量 总是使用 var 来声明变量,如果不这么做将导致产生全局变量,我们要避免污染全局命名空间。

使用一个 var 以及新行声明多个变量,缩进4个空格。

最后再声明未赋值的变量,当你想引用之前已赋值变量的时候很有用。

在作用域顶部声明变量,避免变量声明和赋值引起的相关问题。

[…]

龙生   12 Dec 2019
View Details

Web 前端技术图谱

Web前端开发技术栈 浏览器 Internet Explorer Chrome Firefox Safari Opera Edge Netscape 协议 HTTP/1.1 链接 会话 授权 请求 响应 HTTP/2 压缩 打包 服务器端推送 WebSocket Web三剑客 HTML (HyperText Markup Language) CSS (Cascading Style Sheets) JavaScript 标准 W3C HTML CSS XHTML XML 核心概念 HTML DOM Element Attribute JavaScript Prototype Scope Closure JSON (JavaSript Object Notation) AJAX (Asynchronous JavaScript and XML) CSS Selector Priority Specificity Box Model 渲染引擎 Trident (IE) Blink / prev. WebKit (Chrome) Gecko (Firefox) WebKit (Safari) Blink / prev. Presto (Opera) EdgeHTML (Edge) 脚本引擎 JScript (IE8- / ASP) Chakra (IE9+ […]

龙生   12 Dec 2019
View Details

2018 Web开发人员学习路线图

以下 Web 开发人员学习路线图是来自 Github developer-roadmap 项目,目前已经有繁体版翻译 developer-roadmap-chinese。 主要有三个方向,分别为前端开发、后端开发和运维。图片中不同颜色的意义: 黄色:推荐; 灰色:尽可能学习; 橙色:任选其一。 可以看到,作为 Web 开发者,不管从事什么职位,下面这些技能点是必须掌握的: Git,代码版本管理 SSH; HTTP/HTTPs 和 API,想要真正成为一名 Web 开发者,对 HTTP 协议的了解是必不可少的; 基础命令行的使用; 学会钻研,养成碰到问题,通过自我学习的方式来寻找问题的解决方案,这一点有尤其重要; 数据结构和算法,相信在通常的大学计算机学科这两门课都是要学习的; 字符编码; Github,Github(包括 Google、Stack Overflow)是 Web 开发者的宝矿,好好利用。 点我查看原文原版图 前端开发 基础:HTML、CSS 、JavaScript 框架:React、Angular 或者 Vue 打包工具:Webpack 和 gulp 进阶:Node.js 体系(包括 Node.js 服务端开发,npm 等) 点我查看原文原版图 后端开发 国内可以侧重学习:PHP、Python、Java、Node.js等。 点我查看原文原版图 运维开发 学好 Linux 是基本要求。   from:https://www.runoob.com/w3cnote/2018-web-developer.html

龙生   12 Dec 2019
View Details

gulp基本操作

1、安装淘宝镜像 npm install cnpm -g --registry=https://registry.npm.taobao.org cnpm -v 2、生成项目描述文件 package.json npm init cnpm init (可代替 npm init) (需要项目名称、版本号、描述、入口文件、运行命令、作者、证书 —- 一路按回车即可) 3、全局安装gulp cnpm i gulp@3 -g 全局安装gulp @3 代表选择了 3 的版本 i 即为 install -g 即为 --global gulp -v 4、当前目录内部安装 gulp 模块 cnpm i gulp@3 -D cnpm i gulp@3 -S (二者选择其一即可) -D 缩写 --save-dev 开发依赖 -S 缩写 --save 项目依赖 开发依赖: 开发过程中需要使用到的依赖的模块,项目上线时不需要的模块 — 代码格式校验的模块 项目依赖: 项目上线仍然需要使用的模块 —-- 如果不知道怎么选择,那你就写 -S 5、创建文件 gulpfile.js ,配置gulp

5.1 创建 index.html,使用gulp完成对于index.html的复制操作,复制到当前目录的dist目录内

命令行执行了 gulp copy-index 发现多了 dist目录 5.2 gulp/css/a.css + gulp/css/b.css 5.2.1 复制 gulp/css 至 […]

龙生   12 Dec 2019
View Details