LY
LY
# Vue methods中使用Filter ### Vue中Filter声明方式 Vue中存在两种生命Filter过滤器的方式: - 全局过滤器 ```js Vue.filter('formatDate', val => { console.log('全局过滤器', val) }) ``` 这种方式将过滤器声明到了Vue类型上,所有Vue对象即可访问这个过滤器。 - 本地过滤器 ```js new Vue({ filters: { formatDate (val) { console.log('本地过滤器', val)...
**offsetTop** 用于获得当前元素到定位父级( element.offsetParent )顶部的距离(偏移值)。 > 定位父级 offsetParent 的定义是:与当前元素最近的 position != static 的父级元素。 或许写这个代码的人没有注意到“定位父级”这个这个附属条件。 后来在项目中总会遇到滚动吸顶的效果需要实现,现在我将我知道的 4 种滚动吸顶实现方式做详细介绍。 ## 目录 1. 使用 position:sticky 实现 2. 使用 JQuery 的 offset().top 实现 3. 使用原生的...
[如何解决0.1 +0.2===0.30000000000000004类问题](https://segmentfault.com/a/1190000011913127)
下面是将多位数组转化为单一数组的三种不同方法: 对于此数组: ``` var myArray = [[1, 2],[3, 4, 5], [6, 7, 8, 9]]; ``` 我们需要的结果是: ``` [1, 2, 3, 4, 5, 6, 7, 8, 9] ``` - 解决方案1: 使用...
# 当async/await遇上forEach > 转自:http://imweb.io/topic/5b3b7d624d378e703a4f4437 ## 前情提要 这是在做格式化`wang.oa.com`的时候遇到的一个问题,在邮件中提出后,收到了`avenwu`和`erasermeng`两位前辈的回复和指导,特此感谢。本文在他们指导后,经我整理后完成。 avenwu: > for和forEach的差别是后者不能正常的跳出循环(return、break等),其它的差别不大,把forEach转成for的写法就知道为什么你的for写法可以顺序执行而forEach不能: > > for: ``` const report = async () => { for (let i = 0, len = arr.length; i...
Vue.nextTick 的原理和用途 > 转自: https://segmentfault.com/a/1190000012861862 # 概览 官方文档说明: - 用法: 在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。 疑问: 1. DOM 更新循环是指什么? 2. 下次更新循环是什么时候? 3. 修改数据之后使用,是加快了数据更新进度吗? 4. 在什么情况下要用到? # 原理 ## 异步说明 Vue 实现响应式并**不是数据发生变化之后...
在一些场景中,我需要在父组件上知道子组件什么时候被创建、挂载或者是更新,特别是当为原生 js 库创建组件时。 你可能知道有一些方法可以在你自己的组件上,实现以上的需求。举个例子,通过在子组件的生命周期的钩子函数中,触发事件,就像这样: ``` mounted() { this.$emit("mounted"); } 复制代码 ``` 然后你就可以在父组件上这样做:``。 我告诉你,没有必要这样实现;更何况实际上,你在面对第三方组件时,也办法这样实现。 取而代之的方法是,通过使用 `@hook:` 前缀监听生命周期中的钩子,并指定回调函数。 举个例子,如果你想要在第三方组件 `v-runtime-template` 渲染时做一些事情,那么你可以监听它的生命周期中的 `updated` 钩子: ``` 复制代码 ``` 不相信我吗?自己去 CodeSandbox 看看这个 [例子](https://link.juejin.im?target=https%3A%2F%2Fcodesandbox.io%2Fs%2F18r05pkmn7) 吧! demo:...
# 借助html2canvas实现网页保存为图片 > html2canvas 能够实现在前端直接对页面进行截屏。其实现思路是html2canvas脚本将页面元素渲染为canvas,通过读取DOM并将不同的样式应用到这些元素上实现。它不需要服务端的操作,只在前端即可完成。 ## 一. 在项目中的使用 ### 1. 安装html2canvas ```shell npm install --save html2canvas ``` ### 2. 在项目中使用 ```js // 在需要使用的页面中先引入html2canvas import html2canvas from 'html2canvas' ``` 然后在页面中使用,如下: 在template模板中,设置要生成图片的内容,本文中要生成图片的是ref="capture"的div,然后将生成的canvas图片展示在ref="addImage"的div中...

## 文档 1. [移动端的那些坑](https://mp.weixin.qq.com/s/O3MuoYvyMs0HZHwuWfmmsA) 2. [h5页面在不同ios设备上的问题总结](https://juejin.im/post/5c77b7dbe51d451d4763355d)