Skip to content

Instantly share code, notes, and snippets.

View azl397985856's full-sized avatar
😟
I may be slow to respond.

lucifer azl397985856

😟
I may be slow to respond.
View GitHub Profile
@azl397985856
azl397985856 / draw-taro.js
Last active September 24, 2019 13:18
draw-taro.js
import Taro, { Component } from '@tarojs/taro';
import { Canvas, View, Image } from '@tarojs/components';
import { AtButton } from 'taro-ui';
function getTouchPos(e) {
const rect = {
left: 0,
top: 0,
};
@azl397985856
azl397985856 / chunkAsync.ts
Last active November 13, 2019 08:49
异步分段加载(可以用于性能优化)
/**
*
* @param size 分段的大小
* @param arr 需要被处理的数组
*/
function chunk<T>(size: number, arr: Array<T>): Array<Array<T>> {
return Array.from({ length: Math.ceil(arr.length / size) }, (_, i) =>
arr.slice(i * size, i * size + size)
);
}
window.addEventListener('pointermove', event => {
const events = event.getCoalescedEvents();
for (let event of events) {
const x = event.pageX;
const y = event.pageY;
// draw a line using x and y coordinates.
}
});

支持esm的浏览器我们可以不polyfill,反之我们才需要polyfill。 我们构建的时候需要打两份,如果将来规则更加细化,我们可以做到更加细致。当然这个东西可以做成服务化,类似polyfill.io

  • build 两次,而且只在 build 阶段做,可以用 webpack 的多配置,也可以多 webpack 实例
  • mjs 格式配 babel-preset-env 的 targets.esmodules 为 true
  • HTML部分
<script type="module" src="bundle.mjs"></script>
@azl397985856
azl397985856 / mac-you-should-move-to-trash-issue.md
Last active January 20, 2020 11:16
“XXX can't be opened. You should move it to trash.” for flash projector applications on mac os sierra
@azl397985856
azl397985856 / check_webp_feature.js
Created December 10, 2019 06:44
check_webp_feature
function check_webp_feature(feature, callback) {
var kTestImages = {
lossy: "UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",
lossless: "UklGRhoAAABXRUJQVlA4TA0AAAAvAAAAEAcQERGIiP4HAA==",
alpha: "UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAARBxAR/Q9ERP8DAABWUDggGAAAABQBAJ0BKgEAAQAAAP4AAA3AAP7mtQAAAA==",
animation: "UklGRlIAAABXRUJQVlA4WAoAAAASAAAAAAAAAAAAQU5JTQYAAAD/////AABBTk1GJgAAAAAAAAAAAAAAAAAAAGQAAABWUDhMDQAAAC8AAAAQBxAREYiI/gcA"
};
var img = new Image();
img.onload = function () {
var result = (img.width > 0) && (img.height > 0);
@azl397985856
azl397985856 / kill-process-by-port.md
Created March 13, 2020 09:20
kill process by port
lsof -i :端口 
kill -9 进程ID
image: node:4.2.2
cache:
paths:
- node_modules/
stages:
- test
test_async:
@azl397985856
azl397985856 / ssl-git-problem.md
Created March 27, 2020 02:53
SSL certificate problem
  1. windows
set GIT_SSL_NO_VERIFY=true git clone
  1. linux
env GIT_SSL_NO_VERIFY=true git push