作者文章

fwq

FWQ
小程序
分享Echarts在Taro微信小程序开发中的踩坑记录
栏目介绍Echarts在Taro微信小程序开发中的踩坑记录。 背景 近期笔者在使用Taro进行微信小程序开发,当引入Echarts图表库时,微信检测单包超限2M的一系列优化措施的踩坑记录,期望能指导读者少走一些弯路。 为什么选择Echarts? 微信小程序目录市面上使用最多的两款图表库,如下: echarts-for-weixin——echarts微信小程序版本 wx-charts——基于微信小程序的图表库 对比两款图表库优缺点刚好相反。 echarts-for-weixin:功能强大,但体积非常大 wx-charts:功能相对简单,但体积小 由于笔者对echarts使用较熟悉,且需求图表需要支持的部分功能wx-charts不支持,所以最终选择使用echarts-for-weixin,踩坑之旅就此开始。 单包超过2M,如何处理? 笔者引入echarts-for-weixin,快乐的做完需求,准备上传代码发布微信小程序体验版,坑就此开始… 当单包超过2M上限,则上传代码出现异常,出现上面弹窗提示。 微信小程序官方要求,单包不超过2M,整包不超过16M 遇到单包超过2M,优化方案有如下两种: 微信分包加载subpackages 单包体积优化(缩减代码、压缩、静态资源CDN等等) 由于笔者本次开发需求属于新功能,所以把新功能模块采用独立的分包路由加载,但分包后,还是出现单包超过2M的限制。 经过分析发现业务模块引用的echarts组件,会被Taro打包到common.js模块,导致所有的分包模块都会重复计算echarts的size,导致旧分包模块超过2M的限制。 为什么echarts-for-weixin会被打包到common.js模块? 原因是echarts被echarts-for-weixin组件和外部业务组件所依赖,导致Taro认为echarts.js被多个模块所依赖,所以打包到common.js。 为了解决此问题,采用splitChunks打包配置,将echarts单独模块打包,然后在对应的依赖页面(addChunkPages)注入依赖,配置如下: // echartChunkName echarts打包后的输出路径 mini: {…
2024-11-25 阅读全文 →
FWQ
CMS教程
DedeCms安全设置怎么做
安全设置怎么做? 1、目录权限  我们不建议用户把栏目目录设置在根目录, 原因是这样进行安全设置会十分的麻烦, 在默认的情况下,安装完成后,目录设置如下:  (1) data、templets、uploads、a或5.3的html目录, 设置可读写,不可执行的权限;  (2) 不需要专题的,建议删除 special 目录, 需要可以在生成HTML后,删除 special/index.php 然后把这目录设置为可读写,不可执行的权限;  (3) include、member、plus、后台管理目录 设置为可执行脚本,可读,但不可写入(安装了附加模块的,book、ask、company、group 目录同样如此设置)。  推荐学习: 2、其它需注意问题  (1) 虽然对 install 目录已经进行了严格处理, 但为了安全起见,我们依然建议把它删除;  (2) 不要对网站直接使用MySQL…
2024-11-25 阅读全文 →
FWQ
小程序
小程序框架如何选择
导语: 从小程序开始内测一直到现在,各个公司对小程序业务的开发需求越来越大。开发者在使用原生去开发小程序时很难受,尤其是遇上业务比较复杂的项目,如果仍然使用原生开发,会变得很难去管理和迭代。 (学习视频分享:) 使用原生开发的问题: 小程序本身不支持常用的css预编译器 不支持ES7以上的高级语法,如async await等特性; 不支持工程化,如环境、变量等管理 缺少统一的request拦截请求 缺少统一的本地缓存读取管理 使用框架可以解决的问题: 支持css预编译器 支持ES7以上语法 支持工程化 大部分框架支持多端,一套代码多端复用 框架介绍与对比 Wepy WePY (发音: /’wepi/)是一款让小程序支持组件化开发的框架,通过预编译的手段让开发者可以选择自己喜欢的开发风格去开发小程序。框架的细节优化,Promise,Async Functions的引入都是为了能让开发小程序项目变得更加简单,高效 Mpvue mpvue 是一个使用 Vue.js 开发小程序的前端框架。框架基于 Vue.js 核心,mpvue 修改了…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序主要是干什么的
微信小程序主要是干什么的? 微信小程序,小程序的一种,英文名Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。 全面开放申请后,主体类型为企业、政府、媒体、其他组织或个人的开发者,均可申请注册小程序。微信小程序、微信订阅号、微信服务号、微信企业号是并行的体系。 微信小程序是一种不用下载就能使用的应用,也是一项门槛非常高的创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态。微信小程序也是这么多年来中国IT行业里一个真正能够影响到普通程序员的创新成果,已经有超过150万的开发者加入到了微信小程序的开发,与我们一起共同发力推动微信小程序的发展,微信小程序应用数量超过了一百万,覆盖200多个细分的行业,日活用户达到两个亿,微信小程序还在许多城市实现了支持地铁、公交服务。微信小程序发展带来更多的就业机会,2017年小程序带动就业104万人,社会效应不断提升。  2017年1月9日,张小龙在2017微信公开课Pro上发布的微信小程序正式上线。 2018年2月,微信官方发布公告称:已对涉及假货高仿、色情低俗和违规“现金贷”等超过2000个微信小程序,进行永久封禁处理。 2019年8月9日,微信向开发者发布新能力公测与更新公告,微信PC版新版本中,支持打开聊天中分享的微信小程序。 以上就是微信小程序主要是干什么的的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序模板消息定时推送(图文)
本篇文章给大家带来的内容是关于微信小程序模板消息定时推送(图文),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 最近更新了创建推送api接口的模块,所以你要是想做一个定时推送微信小程序模板消息的功能,只需要简单的三步就好! 1、 添加应用 首先进入vPush开发者管理控制台:https://dev.vpush.cloud 然后点击添加应用,根据配置添加即可。 2、创建API 然后选择模板消息,点击【创建API】按钮,进行简单设置即可。 一般不需要默认数据,因为我们再请求推送接口的时候可以传递数据覆盖。 所以我们设置好要放大的关键词即可: 然后点击创建按钮即可创建完毕。 3、调用API接口 创建接口后,在下方即可看到接口的信息以及使用的代码示例: 所以我们接下来,就开始创建一个我们自己的推送脚本了! 这里以一ONE小程序为例,我们设定每天早上9:10分获取当天的图文数据,然后调用推送API接口即可创建推送任务,最后推送给所有的用户们。 我用nodejs的superagent模块写了一个简单的脚本: /**  * 一ONE小程序推送模块  * 每天早上09:10获取更新,然后推送  * https://github.com/safe-dog/one  * https://vpush.cloud  */var request = require('superagent');  // 获取新数据request   .post('https://api.hibai.cn/api/index/index')   .send({       'TransCode': '030112',           'OpenId': '123456789',           'Body': ''…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序中关于三级联动地址选择器的实例分享
本文介绍了微信小程序三级联动地址选择器的实例代码,分享给大家,有需要的可以一起了解一下 在一些电商类的小程序中,地址选择这个功能一般是必备的,一般的收货信息都需要有一个能选择省市县的控件,当然也有些人为了省事就直接写了一个供输入的input,那么这样做的缺点不言而喻,而且用户体验也不是那么的好,今天的这篇文章就分享一下微信小程序地址选择的实现。省市县的数据以及区域码可以从国家统计局查询到,具体可以自己搜一下。照例先上源码和效果图 源码传送门 picker和picker-view组件 在正式介绍实现之前,我们需要先来介绍下这两个组件,picker这个组件在前面的文章有简单介绍过,它是从底部弹起的滚动选择器,可以通过设置type的值来实现日期选择,时间选择以及普通的选择器,如果我们想实现上图三级联动地址选择效果,发现实现起来很困难,应该说是不能实现,因为picker普通选择器是只能有一列,如果想这实现三列的效果就需要另辟蹊径了。 既然是另辟蹊径,自然就会想到picker-view,该组件是一个嵌入页面的滚动选择器,该组件中可以放置多个picker-view-column,并且只能放置picker-view-column,其它组件是不会显示的,每一个picker-view-column就是一列。 picker-view有几个重要的属性,value是一个数组类型,数组中的数字依次表示 picker-view 内的 picker-view-colume 选择的第几项(下标从 0 开始),数字大于 picker-view-column 可选项长度时,选择最后一项。indicator-style和indicator-class可以设置选择器中间选中框的样式,他有一个事件bindchange,当我们滚动item时选择的item数据发生变化就会触发这个函数,并且可以通过event.detai.vaule(和上面介绍vaule含义相同)获取当前选择的是第几项(下标从 0 开始)。而对于picker-view-column高度会自动设置成与picker-view的选中框的高度一致。 省市县数据文件 存储了地址选择所需要用到的数据,主要是区域码和名字,然后通过下面代码将数据暴露出去,以供使用 module.exports = {  citys,  provinces,  areas } 登录后复制 wxml文件实现 <view>  <view>…
2024-11-25 阅读全文 →
FWQ
CMS教程
织梦Dedecms5.7整站怎么调用购物车订单数量
织梦dedecms5.7整站怎么调用购物车订单数量? 在卖织梦Dedecms5.7 GBK/UTF-8 财付通接口插件模块的时候,网友向我咨询一个织梦Dedecms5.7整站调用购物车订单数量的问题,我查了一下手册,没找到相关知识   推荐学习: 后来想想,其实也挺简单的,就是调用cookie数据,后来看了一下Dedecms的购物车类shopcar.class.php,有现成的函数cartCount可用,为了不影响模板调用,就自己写了个简单的文件,用javascript调用。 方法实现如下: 一、建立一个my_car_count.php文件,放在/plus/目录下面; 二、写上如下代码: 代码如下: <?php /** * my_car_count.php * /plus * 显示购物车的商品数量 * https://www.jb51.net/cms * QQ: 834114969 */ require_once (dirname(__FILE__) . "/../include/common.inc.php");…
2024-11-25 阅读全文 →
FWQ
小程序
微信公众号查看关注者接口的.NET实例教程
实体类:  public class userlist   {     public string total { get; set; }     public string count { get; set; }     public userlistopenid data { get; set; }     public string next_openid { get; set; }   } 登录后复制  public class userlistopenid   {     public List<string> openid { get; set;   }</string> 登录后复制  public class userdetail   {     public int subscribe { get; set; }     public string openid { get; set; }     public string nickname { get; set; }     public int sex { get; set; }     public string language { get; set; }     public string city { get; set; }     public string province { get; set; }     public string country { get; set; }     public string headimgurl { get; set; }     public int subscribe_time { get; set; }     public string unionid { get; set; }     public string remark { get; set; }…
2024-11-25 阅读全文 →
FWQ
小程序
快递查询-微信小程序开发实例教程
摘要: 一直跟着我们手把手系列教程的朋友,对小程序的基础内容应该有一定的了解了。今天我们来实在学习一个综合案例:快递查询。 项目要求: 1.显示一个快递查询的页面 2.输入快递订单编号可以查看订单的流程。 … 一直跟着我们手把手系列教程的朋友,对小程序的基础内容应该有一定的了解了。今天我们来实在学习一个综合案例:快递查询。项目要求:1.微信小程序显示一个快递查询的页面2.输入快递订单编号可以查看订单的流程。 快递查询微信小程序开发代码实现: 1,创建一个快递查询的小程序项目,如下所示: 2,在app.json页面里面修改导航栏标题显示为:快递查询,并到index.wxml页面将个人信息全部删除,仅保留外部view组件,如下图所示:index.wxml的代码如下: 3.在首页添加一个输入框。怎样添加一个输入框呢?可以到微信的api官方,找到小程序开发文档—组件–表单组件—输入框(input)。如下图所示:拷贝图示的代码到我们的页面当中去,代码如下所示:   运行后我们会发现首页已经有一定输入框,如下图所示。 我们会发现这个输入框的颜色看不见,我们给这个输入框加一个样式。index.wxss的样式代码如下: input {   border: 1px solid red;   width: 90%;   margin: 5%;  …
2024-11-25 阅读全文 →
FWQ
CMS教程
帝国cms万能接口是什么
帝国cms万能接口是一个api,允许第三方应用程序与帝国cms交互。功能包括检索内容、发表内容、修改用户数据等。使用优势有集成第三方应用程序、自动化任务、扩展功能等。使用场景包括使用crm管理用户数据、与电商平台集成、自动化内容更新等。使用指南包括:下载插件、配置设置、开发应用程序、集成api、交互。 帝国CMS万能接口 定义: 帝国CMS万能接口是一个应用程序编程接口(API),它允许第三方应用程序与帝国CMS交互。 功能: 万能接口提供了一系列方法,第三方应用程序可以使用这些方法来执行以下操作: 检索内容(文章、新闻、图片等) 发表新内容 修改或删除现有内容 检索和修改用户数据 执行其他与帝国CMS相关任务 优势: 使用帝国CMS万能接口具有以下优势: 集成第三方应用程序:允许将外部应用程序(如CRM、电商平台)与帝国CMS无缝集成。 自动化任务:自动化内容管理、用户管理等任务,节省时间和精力。 扩展功能:扩展帝国CMS的功能,满足特定需求或与其他平台集成。 提高数据共享:促进与其他应用程序的数据交换,从而改善决策制定。 使用场景: 万能接口可用于以下场景: 使用第三方CRM管理帝国CMS的用户数据。 与电商平台集成,从帝国CMS发布产品信息。 通过外部应用程序自动化内容更新过程。 从其他来源检索数据并导入到帝国CMS中。 使用指南: 要使用帝国CMS万能接口,需要遵循以下步骤: 下载并安装万能接口插件。 配置万能接口设置,包括API密钥和授权信息。 使用编程语言(如PHP、Java)开发您的第三方应用程序。…
2024-11-25 阅读全文 →