- 博客(6)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 vue高阶封装之双向绑定(一) 如何实现跨组件 v-model?
为什么封装组件要使用双向绑定?双向绑定把数据变更的操作隐藏在组件内部,调用者并不会直接感知,业务层无需关心内部实现逻辑,简化大量与业务无关的代码。组件双向绑定应有以下2个特点:1. 父组件只传输prop,不定义事件接收。2. 由子组件更新传下来的值。本篇文章详解如何用 v-model 实现3种双向绑定v-model 是什么?1.v-model即可以作...
2019-06-11 17:58:33
4371
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 原生JS实现滚动条动画 (滚动到指定位置 / 返回顶部)
const ScrollTop = (number = 0, time) => { if (!time) { document.body.scrollTop = document.documentElement.scrollTop = number; return number; } const spacingTime = 20; /...
2018-07-20 15:22:28
23569
10
原创 如何使用js深度删除对象中为'空'的字段?
/** * 去除对象中所有符合条件的对象 * @param {Object} obj 来源对象 * @param {Function} fn 函数验证每个字段 */function compactObj (obj, fn) { for (var i in obj) { if (typeof obj[i] === 'object') { compactObj(ob...
2019-06-28 17:53:11
2815
原创 javascript算法 合并两个字符串的重叠部分, 正则获取匹配项 $1 $2 ...
前段时间有个需求,是匹配多个关键词并且设置高亮。记录一下用到的算法及正则替换。 1.合并两个字符串的重叠部分goggle没有搜索到类似算法(非js) ,所以自己写了一个算法(欢迎fork)例如:输入'123' '345' 输出 '12345' 输入'789' '678' 输出 '6789'/** * 去重合并关键词 * @param {Strin...
2018-10-26 16:47:14
2368
原创 对vue项目(增加/进行)单元测试,所遇到的问题及解决方法。 dom节点为null等
1、用vue-cli生成一个新的项目,把单元测试需要的文件直接复制到你现有的项目中2.增加启动入口"unit": "karma start test/unit/karma.conf.js --single-run"3.安装单元测试需要的插件npm i -D karma karma-webpack phantomjs-prebuilt karma-phantomjs-laun...
2018-10-25 12:24:55
2486
原创 JavaScript实现未知尺寸的img图片自适应
@源自本人知乎。 https://zhuanlan.zhihu.com/p/37566352使用方法:对应img标签添加class 'zoom-logo',其父级添加class 'zoom-log-box'1、 默认效果:把图像图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域。2、 图片完全覆盖父级区域效果:添加data-zoom-reverse属性(大于1或其他任何字符串)ps:相同于bac...
2018-06-01 17:17:21
3973
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人