分类 技术文章 下的文章

在使用Vue Router配置了异步组件后,即使没有激活这些异步组件,在浏览器中仍然可以看到请求这些组件。比如下面的配置:
router.js:

import Vue from 'vue'
import Router from 'vue-router'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'Home',
      component: Home
    },
    {
      path: '/Chat',
      name: 'Chat',
      component: () => import( /* webpackChunkName: "Chat" */ './views/Chat.vue')
    }
  ]
})

- 阅读剩余部分 -

iOS有很多独特(奇怪)的表现,最近在做一个H5页面时,遇到了真机上滑动不流畅的问题。查阅资料得知,可以给带滚动条的那个元素设置-webkit-overflow-scrolling: touch解决这个问题,但设置之后依然如故。最后经过实验,必须给滚动元素显式的设置overflow: auto|scroll才能解决这个问题。
具体原理留待空闲时研究。

image组件底部有空白,这可能是小程序自身的bug,对image设置vertical-align为任意值即可消除。


更新时间:2019-06-22

一直以来对小程序image组件底部空白的理解是错误的,以前以为是inline-block元素底部自带的一点空白,现在在用到image的时候发现其实不是的。

小程序image组件有一个默认的高度:240px,如果image组件不设置mode,并且高度不够240px,底部就会出现空白。

消除image组件空白有两种方法:设置合适的mode、设置固定高度

比如,要图片宽度是100%,高度自适应,就可以这样设置:

<image mode='widthFix' src='xxxx.png'></image>

经过实验发现,给image设置height: auto会导致图片高度为0,所以不能通过重置高度来消除空白,只能设置固定的高度,比如:height: 100%height: 40px等。


更新时间:2019-06-26

image垂直排列的时候,image的宽度是100%modewidthFix,底下依然会有空白,这就是我在开头的时候遇到的情况了。

在保存图片到相册后,微信会弹出提示“图片已保存到xxxxxx”,如果在saveImageToPhotosAlbumsuccess中想要提示用户保存成功,就必须先调用hideLoading(),否则自己写的showToast是不会显示的。

wx.saveImageToPhotosAlbum({
    success(res) {
        wx.hideLoading();  // 必须先调用这个
        wx.showToast({
            title: '图片已保存到您的相册',
            icon: 'none',
            duration: 4000
        });
    }
})

前言

由于移动端屏幕的像素密度都非常高,css中的1px呈现在屏幕中,往往不止1个物理像素,看起来比较粗,设计师很难满意。这和devicePixelRatio有关。
transform实现看起来比较细的边框是一个很简单的方案,在移动端兼容性也非常好,不需要多余的资源,当然,肯定要多些几行代码。


- 阅读剩余部分 -

1、defaultValue

HTML

<input type="text" value="Hello world">

JavaScript

const input = document.querySelector('input');

console.log(input.value);        // 'Hello world'

input.value = 'New value';

console.log(input.value);        // 'New value'
console.log(input.defaultValue); // 'Hello world'

如代码所示,当用JavaScript改变了inputvalue后,可以使用defaultValue来获取这个元素的初始值。

- 阅读剩余部分 -

在线演示:

Demo for article: SVG Coordinate Systems & Transformations (Part 1) – The viewport, viewBox, & preserveAspectRatio

以下内容都是基于preserveAspectRatio为默认状态时的情况,也就是不考虑preserveAspectRatio。

为什么设置viewBox的min-x, min-y后,如果设置的是正值,图像反而会向左/上移动,而设置负值则向右/下移动呢?
我是这么理解的:

  1. viewBox的左上角总是和视窗的左上角对齐。
  2. 在设置viewBoxmin-xmin-y后,

    1. 首先,图像的位置并不会移动;
    2. 如果设置的为正值,viewBox的起点就会向右/下移动;
    3. 由于图像位置不变,还是基于视窗的左上角,所以图像会被裁切。如果设置的是负值,就相当于PS中扩展画布左/上会填充空白。
    4. 之后,viewBox的起点会移动到视窗的原点位置,所以,如果设置的值是正值,图像就会被裁切,而如果设置的是负值,就会发现图像左左侧/上侧填充了空白。
    5. viewBox起点与视窗的起点对齐,这时候就出现了文章开始让人疑惑的现象。

这里有张鑫旭的文章,讲解的非常透彻
理解SVG viewport,viewBox,preserveAspectRatio缩放 张鑫旭