50 个让你高效编程的前端轮子

本文列举了50个能提升前端开发者效率的工具库,包括bignumber.js用于任意精度计算,QRCode.js和qrcode.vue用于生成二维码,cssnano和js-beautify用于CSS和JS压缩美化,cors node解决跨域问题,countup.js实现数字滚动效果,js-base64处理Base64编码,以及vuejs-datetimepicker、vue-meta-info、vue-smooth-scroll等前端框架组件。此外,还介绍了代码高亮库prismjs、状态管理库vuex-persistedstate、滑动组件vue-slider-component等,以及一系列实用的Node.js模块如portfinder、regedit、lowdb、cheerio等。
摘要由CSDN通过智能技术生成

https://www.npmjs.com/package/cross-env

==功能==:cross-env这是一款运行跨平台设置和使用环境变量的脚本。

npm install --save-dev cross-env

{

“scripts”: {

“parentScript”: “cross-env GREET=“Joe” npm run childScript”,

“childScript”: “cross-env-shell “echo Hello $GREET””

}

}

bignumber.js

https://www.npmjs.com/package/bignumber.js

==功能==:一个用于任意精度十进制和非十进制算术的JavaScript库

https://mikemcl.github.io/bignumber.js/

https://juejin.cn/post/6844903704714280968###heading-7

QRCode.js、 qrcode.vue

https://www.npmjs.com/package/qrcodejs2

https://www.npmjs.com/package/qrcode.vue

==功能==:

npm install --save qrcode.vue

npm i qrcodejs2

getBlob(base64) {

const mimeString = base64.split(‘,’)[0].split(‘:’)[1].split(‘;’)[0]; // mime类型

const byteString = atob(base64.split(‘,’)[1]); // base64 解码

const arrayBuffer = new ArrayBuffer(byteString.length); // 创建缓冲数组

const intArray = new Uint8Array(arrayBuffer); // 创建视图

for (let i = 0; i < byteString.length; i += 1) {

intArray[i] = byteString.charCodeAt(i);

}

return new Blob([intArray], {

type: mimeString,

});

},

savePicture(Url = this.qrcodeUrl) {

const blob = new Blob([‘’], { type: ‘application/octet-stream’ });

const url = URL.createObjectURL(blob);

const a = document.createElement(‘a’);

a.href = Url;

// eslint-disable-next-line prefer-destructuring

a.download = Url.replace(/(./)([^.]+.*)/gi, ‘$2’).split(‘?’)[0];

const e = document.createEvent(‘MouseEvents’);

e.initMouseEvent(

‘click’,

true,

false,

window,

0,

0,

0,

0,

0,

false,

false,

false,

false,

0,

null,

);

a.dispatchEvent(e);

URL.revokeObjectURL(url);

},

_qrcode(url) {

const div = document.createElement(‘div’);

// eslint-disable-next-line new-cap

const code = new QRCode(div, {

text: url,

width: 500,

height: 500,

colorDark: ‘###000000’,

colorLight: ‘###ffffff’,

correctLevel: QRCode.CorrectLevel.L,

});

// 这里如果需要在页面上展示的话,就将div节点给添加到dom树上去;node.appendChild(div)

const canvas = code._el.querySelector(‘canvas’); // 获取生成二维码中的canvas,并将canvas转换成base64

const base64Text = canvas.toDataURL(‘image/png’);

const blob = this.getBlob(base64Text); // 将base64转换成blob对象

return window.URL.createObjectURL(blob);

},

cssnano、js-beautify

https://www.npmjs.com/package/cssnano

https://www.npmjs.com/package/js-beautify

==功能==:css js 压缩工具

cors node

https://www.npmjs.com/package/cors

==功能==:CORS是一个node.js软件包,用于提供可用于通过各种选项启用CORS的Connect / Express中间件。

npm install cors

var cors = require(‘cors’);

app.use(

cors({

origin: [‘http://localhost:8000’],

methods: [‘GET’, ‘POST’],

alloweHeaders: [‘Conten-Type’, ‘Authorization’],

})

);

countup.js

https://www.npmjs.com/package/countup.js

==功能==:数字滚动插件使用方法详解

npm i countup.js

interface CountUpOptions {

startVal?: number; // number to start at (0)

decima

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值