IE-IE外包-北京IE外包

搜 索

Search:IE


js如何生成二维码 node.js生成二维码插件

 node.js生成二维码插件前端开发工作已经有14个年头,生成二维码之前一直用草料,最近发现草料不提供免费二维码生成api了。如果批量生产二维码还需要付费,感觉限制,想着如果部署自己服务器上,这样岂不是很方便的随心生成二维码了。举例:http://www.chinasgp.cn/html/hot/13371/613427876047.html  这样的产品详情页面,如果用户想 node.js生成二维码插件前端开发工作已经有14个年头,生成二维码之前一直用草料,最近发现草料不提供免费二维码生成api了。如果批量生产二维码还需要付费,感觉限制,想着如果部署自己服务器上,这样岂不是很方便的随心生成二维码了。举例:http://www.chinasgp.cn/html/hot/13371/613427876047.html  这样的产品详情页面,如果用户想手机购买,如果产品页面有对应的二维码是不是很方便。带着对自己开发方便和对淘宝客网站用户使用方便的想法,通过学习和查找,发现node.js 生成二维码有对应的qrcodeqrcode这个用起来总结:1.有网页版,如果没有特别要求使用方法载入 JavaScript 文件<script src="qrcode.js"></script>DOM 结构<div id="qrcode"></div>调用// 简单方式 new QRCode(document.getElementById('qrcode'), 'your content'); // 设置参数方式 var qrcode = new QRCode('qrcode', { text: 'your content', width: 256, height: 256, colorDark : '#000000', colorLight : '#ffffff', correctLevel : QRCode.CorrectLevel.H }); // 使用 API qrcode.clear(); qrcode.makeCode('new content'); 参数说明new QRCode(element, option) 名称 默认值 说明 element - 显示二维码的元素或该元素的 ID option   参数配置 option 参数说明 名称 默认值 说明 width 256 图像宽度 height 256 图像高度 typeNumber 4   colorDark "#000000" 前景色 colorLight "#ffffff" 背景色 correctLevel QRCode.CorrectLevel.L 容错级别,可设置为: QRCode.CorrectLevel.L QRCode.CorrectLevel.M QRCode.CorrectLevel.Q QRCode.CorrectLevel.H API 接口 名称 说明 makeCode(text) 设置二维码内容 clear() 清除二维码。(仅在不支持 Canvas 的浏览器下有效)  2.node.js 服务器安装qrcode生成二维码,区别网页引入,因为网页版生成的是把地址转成base64位的,比起生成二维码图片要体积大,正常网站使用时没有太大区别的。我在做小程序版开发的时候,因为引入第三方代码小程序引入时报错。最后想到解决方案是二维码提前生成图片。因为小程序是可以引入图片的。这样既可以减小页面体积,又可以解决小程序二维码倒入问题。

大额优惠券页面快速排序实现方案

 页面商品数据较多情况如何实现快速排序? 多数解决方案前端传递请求后端实现排序,这也是常用方案,优点是商品后台更新,修改可以拿到最新的数据。弊端数据从后端获取,严重依赖后端接口请求和相应时间。如果数据是固定的,用户第一次已经拿到。在前端实现按价格,按优惠券排序是不是更好? 很多时候想法确实很重要,因为我做的大额优惠券页面node.js 已经全部静态化实现。前端实现快速排序减少资源请求是当 页面商品数据较多情况如何实现快速排序?多数解决方案前端传递请求后端实现排序,这也是常用方案,优点是商品后台更新,修改可以拿到最新的数据。弊端数据从后端获取,严重依赖后端接口请求和相应时间。如果数据是固定的,用户第一次已经拿到。在前端实现按价格,按优惠券排序是不是更好?很多时候想法确实很重要,因为我做的大额优惠券页面node.js 已经全部静态化实现。前端实现快速排序减少资源请求是当前目标。页面地址可参考:http://www.chinasgp.cn/html/hot/27448/index.html下面代码总结: var bodyHtml = $(".subContent").html(); //保存页面默认数据//按价格排序$(".sortText .jiage").click(function () {    console.log($(".subContent .deal"))    $(".sortText span").removeClass("current");    $(this).addClass("current")    var tempHtml = $(".subContent .deal").sort(function (a, b)    { return $(a).find(".jiageNum").text() - $(b).find(".jiageNum").text() });    $(".subContent").html(tempHtml);})//按销量排序$(".sortText .xiaoliang").click(function () {    console.log($(".subContent .deal"))    $(".sortText span").removeClass("current");    $(this).addClass("current")    var tempHtml = $(".subContent .deal").sort(function (a, b)    { return $(b).find(".xiaoNum").text() - $(a).find(".xiaoNum").text() });    $(".subContent").html(tempHtml);})//按优惠券$(".sortText .youhui").click(function () {    $(".subContent").html(bodyHtml);    $(".sortText span").removeClass("current");    $(this).addClass("current")})
标签:

webpack happypack多线程打包

 webpack happypack 多线程打包,当工程比较大的时候可以使用多线程打包 操作步骤:1、安装happypack插件 yarn add happypack2、配置... webpack happypack 多线程打包,当工程比较大的时候可以使用多线程打包 操作步骤:1、安装happypack插件 yarn add happypack2、配置// 导入多线程打包let Happypack = require('happypack')//module.exports = {plugins: [// js声明多线程打包new Happypack({id: 'js',use: [{loader: 'babel-loader',options: {presets: ['@babel/preset-env','@babel/preset-react']}}]}),//css 多线程打包new Happypack({id: 'css',use: [ MiniCssExtractPlugin.loader, 'css-loader', 'less-loader']})],module: {// loaderrules: [{test: /\.css$/, //匹配css文件use: 'Happypack/loader?id=css'},{test: /\.less$/, //匹配less文件use: 'Happypack/loader?id=css'},{test: /\.js$/, //匹配js文件use: 'Happypack/loader?id=js'}]}} 完整案例:build/webpack.base.config.js // 开发和生成模式共同的配置let path = require('path');// path.resolve 相对路径转成绝对路径// console.log(path.resolve('dist'));// 以当前目录// console.log(__dirname);// html-webpack-plugins 插件let HtmlWebpackPlugins = require('html-webpack-plugin');//let MiniCssExtractPlugin = require('mini-css-extract-plugin');//let webpack = require('webpack');// 导入多线程打包let Happypack = require('happypack')// webpack相关配置module.exports = {// 入口,表示从哪里开始打包entry: {home: './src/index.js'},// 表示出口(输出后文件相关配置)output: {// 打包后的文件名 多入口根据入口名称生成filename: 'build.js',// 输出后的路径(必须是一个绝对路径)path: path.resolve(__dirname, '../dist')},// 插件配置plugins: [new HtmlWebpackPlugins({// 模板位置template: 'index.html',// 文件名filename: 'index.html'}),// 抽离css为单独文件new MiniCssExtractPlugin({filename: 'main.css'}),// js声明多线程打包new Happypack({id: 'js',use: [{loader: 'babel-loader',options: {presets: ['@babel/preset-env','@babel/preset-react']}}]}),//css 多线程打包new Happypack({id: 'css',use: [ MiniCssExtractPlugin.loader, 'css-loader', 'less-loader']})],//resolve: {// 解析三方库文件//modules: [ path.resolve('node_modules') ],// 扩展名extensions: ['.js', '.css', '.json', '.vue'],// 定义路径别名alias: {'@': path.resolve('src')}},module: {// loaderrules: [{test: /\.css$/, //匹配css文件use: 'Happypack/loader?id=css'},{test: /\.less$/, //匹配less文件use: 'Happypack/loader?id=css'},{test: /\.js$/, //匹配js文件use: 'Happypack/loader?id=js'}]}} 
标签: