- 博客(26)
- 收藏
- 关注
转载 mpvue开发小记
1、组件嵌套组件时,子组件作用域bug组件A内的slot包含子组件B的话,无法正常使用变量(这种情况下,B组件的template错误地使用了A的作用域)。我的解决方案:减少一层组件提炼,即这种情况下,将A和B合并成新组件C,可配合使用mixin解决部分代码冗余问题。2、上传图片到阿里云oss我们采用了‘服务端签名后直传’方案,即在服务端通过完成签名,然后前端直传数据到OSS,这样...
2018-08-13 11:12:00 156
转载 Object.defineProperty 与 属性描述符
为JavaScript对象新增或者修改属性,有两种不同方式:直接使用=赋值或者使用Object.defineProperty 定义,使用后者的话还可以设置属性的描述符。Object.definePropertyObject.defineProperty(obj, prop, descriptor) 接受三个参数:obj:要在其上定义属性的对象。prop:要定义或修改的属性的名称...
2018-07-12 10:23:00 417
转载 温习js中对象的继承
温故而知新 XD1. 关于原型和构造函数的几个知识要点:使用new 操作符调用构造函数,会经历以下四个步骤:1.1. 创建一个新对象;1.2. 将构造函数的作用域赋给新对象(因此 this 就指向了这个新对象);1.3. 执行构造函数中的代码(为这个新对象添加属性);1.4. 返回新对象。当调用构造函数创建一个新实例后,该实例的内部将包含一个指针(内部属性:__pro...
2018-06-25 01:32:00 154
转载 实现自己的Promise polyfill
功能清单:Promise.prototype.then()Promise.prototype.catch()Promise.reject()Promise.resolve()Promise.all()Promise.race()Promise.prototype.finally()参考:Prmoises A+规范具体实现function Promise(fn)...
2018-06-22 18:09:00 487
转载 PostHtml 中的一些有用的插件
记录一下 PostHtml 中的一些比较有用的插件参考自PostHtml文档posthtml-pug将pug转化成htmlposthtml-md将md语法转化为html语法posthtml-retext根据规则转化自然语言(例如特定字符串转成emoji表情)posthtml-head-elements将JSON配置生成head元素内容posthtml-includ...
2018-06-10 12:26:00 331
转载 Babel 和 PostCss 的一些基本配置
Babel 是一个javascript编译器,PostCSS 是一个样式转换工具。两者都可以看作是一个转化平台,我们可以在上面使用一些插件,来达到想要的代码转化。几乎每个前端项目都要使用它们。Babel配置 .babelrc 文件{ "presets": [ // babel-preset-env插件,相当于 es2015 ,es2016 ,es201...
2018-06-06 18:07:00 299
转载 实现一个简单的Vue插件
我们先看官方文档对插件的描述插件通常会为 Vue 添加全局功能。插件的范围没有限制——一般有下面几种:1.添加全局方法或者属性,如: vue-custom-element2.添加全局资源:指令/过滤器/过渡等,如 vue-touch3.通过全局 mixin 方法添加一些组件选项,如: vue-router4.添加 Vue 实例方法,通过把它们添加到 Vue.prototype...
2018-05-17 10:57:00 123
转载 前端路由的两种模式: hash 模式和 history 模式
随着 ajax 的使用越来越广泛,前端的页面逻辑开始变得越来越复杂,特别是spa的兴起,前端路由系统随之开始流行。从用户的角度看,前端路由主要实现了两个功能(使用ajax更新页面状态的情况下):记录当前页面的状态(保存或分享当前页的url,再次打开该url时,网页还是保存(分享)时的状态);可以使用浏览器的前进后退功能(如点击后退按钮,可以使页面回到使用ajax更新页面之前的状态...
2018-05-14 09:49:00 579
转载 async/await 里的并行和串行
我们在使用 async/await 语法时,有时会这样用:function getName () { return new Promise((resolve, reject)=>{ setTimeout(()=>{ resolve('tony') }, 2000) })}function getId...
2018-05-07 22:07:00 670
转载 event loop 小记
水平不够,只能整理一下知乎大神的回答,勉强度日这样子在一个事件循环里,会有两个主要的队列:task queue 和 micro-task quene。其中 task 包括: script(整体代码),setTimeout,setInterval,setImmediate,MessageChannel,I/O,UI rendering;(HTML5 中规定 set...
2018-04-24 18:05:00 114
转载 css3 新旧伸缩盒的异同
由于不需要理会IE浏览器,伸缩盒(flexible box)移动端开发中非常好用!工作中使用APICLOUD开发手机App,老板要求兼容到安卓2.3(新版的需要安卓4.4以上),所以一直使用的是旧版的flexible box。现在整理一下新旧版本的部分常用属性的相同点和不同点,免得被人问起哑口无言。相同功能的不同写法:display: -webkit-box; // 旧displ...
2018-04-21 15:51:00 135
转载 js实现日历
有这样一个普通的日历需求第一反应就是找插件,结果找到了,但是改起来非常麻烦,然后查下实现的原理,发现原来很简单,于是自己实现了一个。首先分析一下这个组件,每页显示的是当前月的所有日期及所占据的行剩下的格子所属的上一个月的最后几天或下一个月的前几天。然后,神奇的Date类型原来可以这样获取日期实例:new Date(2018,4,0) // 2018年5月第一天的Date...
2018-04-20 14:41:00 200
转载 一些常用的css片段
1、 单行文字溢出时省略号.test{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap;} 2、 多行文字溢出时省略号.test{ display: -webkit-box; -webkit-box-orient: vertical; -w...
2018-04-18 14:46:00 128
转载 一种简单的移动端屏幕适配方案
关于移动端屏幕适配的文章网上有很多,大部分都写的很好,而本文是我自己观摩各路大神的文章后的小小总结。flexible方案说到移动端适配,总不免会提到阿里的flexible方案。对于flexible,我总结出以下几点:使用rem实现等比缩放:使用js动态设置html标签的font-size将屏幕宽度按10rem进行计算html标签的font-size为了以后v...
2018-04-10 16:09:00 166
转载 babel-preset-es2015,babel-polyfill 与 babel-plugin-transform-runtime
babel-preset-es2015 是一个babel的插件,用于将部分ES6 语法转换为ES5 语法。转换的语法包括:箭头函数var a1 = () => 1编译为var a1 = function a1() { return 1;};var obj = { birth: 1990, getAge: func...
2018-01-13 17:36:00 657
转载 webpack 的第三方库分离并持久化缓存
我们常常需要在浏览器缓存一些稳定的资源,如第三方库等。要达到这个目标,只需要两步:1、提取出“稳定的资源”;2、提供稳定的文件hash。处理后的出的文件就像这样子: app.1w3ad4q4.js,然后,我们设置它的缓存规则为永不过期。这样,当文件没有改动时,浏览器将一直沿用第一次下载的缓存,不会浪费流量了。详细说明:张云龙的知乎回答webpack中...
2017-07-19 11:11:00 316
转载 CSS垂直居中小结
1、设置子元素:{ ... position :absolute; margin:auto; top:0; right:0; bottom:0; left:0; }2、设置子元素:(height必须是固定值){ position: absolute; top:50%; ...
2017-06-07 19:49:00 124
转载 -webkit-overflow-scrolling:touch;
-webkit-overflow-scrolling建了带有硬件加速的系统级控件,所以效率很高。但是这相对是耗更多内存的,最好在产生了非常大面积的overflow时才应用。而且在 ios8 里有bug ,导致页面显示不完整!转载于:https://www.cnblogs.com/JRliu/p/6958256.html...
2017-06-07 17:42:00 150
转载 webpack 小记
零、入口与输出//对像语法entry: { aa: __dirname +'/src/aa.js', //(chunkName :path) bb: __dirname +'/src/bb.js' },output: { filename: '[name]-[hash].js', path: __dirname + '...
2017-05-31 08:57:00 131
转载 git的回退和撤销操作
回退是git的使用中很常用的一个操作,如果清楚各个回退命令的作用,不仅大大加快代码回退的效率,还能避免代码回退造成的事故1、git reset --hard [commit]清空暂存和未暂存的更改 ,仓库重置到目标提交。 也就是说,使用该命令后,文件状态变为目标提交的状态所以,可以: git reset HEAD --hard 来丢弃所有已暂存和未暂存的...
2017-04-27 10:38:00 202
转载 vue2.0 v-tap简洁(漏)版 (只解决300ms问题)
Vue.directive('tap',{ bind:function(el,binding){ var startTx, startTy, endTx, endTy, startTime, endTime; el.addEventListener("touchstart",function(e){ var ...
2016-10-18 09:29:00 214
转载 JSONP原理小记
大家都知道JSONP(JSON with padding参数式JSON)是跨域传输数据的方法,jq等很多类库都封装了JSONP的方法,但是他的原理是怎样的呢?下面举个我认为最浅显的栗子,大家看过了都会明白原理!JSONP的原理,概括点说,就是动态插入<script>元素,当然<script>元素引用的js文件是服务器传过来的,他与<img>元素一样...
2016-10-14 13:15:00 143
转载 前端模块加载规范AMD与CMD小记
AMD代表:requirejs; CMD代表:seajs;AMDCMD代表requirejsseajs执行提前加载,不管是否调用模块,先解析所以模块提前加载,在真正需要使用(依赖)模块时才解析该模块优点速度快按需解析缺点有可能浪费资源性能比AMD差写法...
2016-10-08 10:30:00 365
转载 html状态码
100——客户必须继续发出请求101——客户要求服务器根据请求转换HTTP协议版本200——交易成功201——提示知道新文件的URL202——接受和处理、但处理未完成203——返回信息不确定或不完整204——请求收到,但返回信息为空205——服务器完成了请求,用户代理必须复位当前已经浏览过的文件206——服务器已经完成了部分用户的GET请求300——请求的资源可在多处得到3...
2016-09-26 21:30:00 93
转载 使用vue-cli开发时跨域问题
打开config文件夹下的index.js,配置proxyTable:{ ... dev:{ ... proxyTable: { '/api': { target: 'http://localhost', ...
2016-09-08 22:27:00 134
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人