uni-app

uniapp动态改变底部tabBar和导航标题navigationBarTitleText

旧街凉风 提交于 2020-07-28 08:34:20
在开发中,我们会遇到需求国际化,那么底部tabBar和导航标题navigationBarTitleText就要动态切换: 1.改变底部tabBar: uni.setTabBarItem({ index: 0 , text: this .i18n.tabs.home }); text: tab 上的按钮文字,我们给text动态赋值就可以了 index:tabBar 的哪一项,从左边算起 2.改变导航标题navigationBarTitle的标题 uni.setNavigationBarTitle({ title: this .i18n.user.title }); 当动态切换时结果: 来源: oschina 链接: https://my.oschina.net/u/4402583/blog/4443760

uniapp-微信小程序分包: 配置和注意事项

℡╲_俬逩灬. 提交于 2020-07-28 06:37:37
1.pages.json 中添加以下配置: 2.pages.json 将需要分包的页面 从pages数组中删除,配置到subPackages下面的pages数组中 "subPackages": [{ "root": "pagesB", //文件夹名称, pages文件夹同级新建一个就行 "pages": [ { "path": "liancui/add/add", //相对于pagesB文件夹的位置 "style": {} } ] }] 3.新建分包文件夹,和pages文件夹同级。 将需要分包的页面拷贝到分包文件夹中 4.运行微信小程序, 右上角详情 如果显示分包名称和分包大小就证明分包成功。 注意事项 1:项目开始时就知道会有分包需求的话, 建议主包是 进入小程序后能够直接操作和查看的页面 比如tab页 2:分包在加载的时候有一些许的卡顿(网络和机型原因), 要考虑好哪些页面需要做分包,做分包会不会影响用户体验 来源: oschina 链接: https://my.oschina.net/u/4265475/blog/4410367

博客园开放API如何使用

寵の児 提交于 2020-07-27 23:19:14
业务背景: 我通过weblogic这个Java爬虫框架是能够爬取得到博客园的大多数数据,但后来得知博客园有自己的开放API,通过这个开放API可以做一些事情,比方说实现一个关于博客园文章的小程序阅读、或者想学习go、node.js、flutter或uniapp用其实现一个CMS应用。 一、API KEY 申请 申请地址: https://oauth.cnblogs.com/ 二、申请成功后,会发一个邮件给你,里面有ClientId和ClientSecret 三、访问博客园OpenAPI文档 地址为: https://api.cnblogs.com/Help 四、验证请求一下 如上图是我做了一层封装。 主要封装了请求体中的clien_id、client_secret、grant_type等。 基本上拿到了token,将其放到请求头中,接下来博客园开放接口都能使用(注意,是开放接口,没有开放的接口,换言之就是接口文档上没有了,就不能使用) 来源: oschina 链接: https://my.oschina.net/u/4257773/blog/4304600

uni-app平台判断 | uni app判断h5 小程序 app 等不同平台

99封情书 提交于 2020-07-26 19:45:46
推荐使用条件编译,少用条件判断 // @/utils/EPlatform.ts /* *枚举EPlatform */ export enum EPlatform { /* *App */ AppPlus = 'APP-PLUS' , /* *App nvue */ AppPlusNvue = 'APP-PLUS-NVUE' , /* *H5 */ H5 = 'H5' , /* *微信小程序 */ MpWeixin = 'MP-WEIXIN' , /* *支付宝小程序 */ MpAlipay = 'MP-ALIPAY' , /* *百度小程序 */ MpBaidu = 'MP-BAIDU' , /* *字节跳动小程序 */ MpToutiao = 'MP-TOUTIAO' , /* *QQ小程序 */ MpQq = 'MP-QQ' , /* *360小程序 */ Mp360 = 'MP-360' , /* *微信小程序/支付宝小程序/百度小程序/字节跳动小程序/QQ小程序/360小程序 */ Mp = 'MP' , /* *快应用通用(包含联盟、华为) */ QuickappWebview = 'quickapp-webview' , /* *快应用联盟 */ QuickappWebviewUnion = 'quickapp-webview-union' , /* *快应用华为 */

IM聊天教程:送图片/视频/语音/表情

点点圈 提交于 2020-07-26 12:11:22
经常有朋友问起,如何在IM即时通讯中实现发送图片、视频、语音和表情? 为此,小编特意写了一个vue版本的Demo,实现了图片视频文件和表情的的发送,参考这个Demo源代码,相信你就可以轻松的用Uniapp和小程序完成类似的功能。 一、图片/视频/语音发送 对于语音、视频和图片的发送,您如果有注意的话,在使用QQ或者微信的时候,当有朋友发送图片和视频给您时,收到后,需要等一会儿才能显示出来。就是因为在发送的时候,只发送了文件的路径,您收到后,需要加载才能显示出来。因为当前主流的IM包括微信,QQ等对于图片和视频的发送,通常的做法都是: 上传文件到文件服务器 推送文件路径 收到文件路径 加载文件 并不会通过网络直接传送源文件,因为对于大文件的传输,会影响消息的即时性。 对于文件的上传,您可以选择直接上传到您自己的服务器,也可以选择上传到各种云服务的对象存储服务,也就是OSS上。 参考源码: DemoService.prototype.sendFileMessage = function (type,content) { let uploadResult = restapi.uploadFile(content); let message = new Message(type, uploadResult.url); uploadResult.promise.then(() => {

个人作业——软件工程实践总结&个人技术博客

和自甴很熟 提交于 2020-07-25 17:18:34
这个作业属于哪个课程 2020 春福大软工实践 W 班 这个作业要求在哪里 个人作业——软件工程实践总结&个人技术博客 这个作业的目标 将项目的设计落地,继续完善设计类图,并在正式开始开发之前设计好系统和数据库、制定好计划和分工 作业正文 其他参考文献 一、回望 【20%】 (1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强软件工程专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么? 虽然编程能力和团队合作能力都得到了进步,但是仍然还是不够。 (2)你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;和你针对你的目标绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗? 没有,只学习了其中的一部分。 (3)请总结这门课程的实践总结和给你带来的提升,包括以下内容: 统计一下,你在这门软件工程实践中,一共完成了多少行的代码; 4000左右 软工实践的各次作业分别花了多少时间?(做一个列表) 作业 耗时(小时) 准备篇 10 热身篇——疫情统计 10 结对第一次—某次疫情统计可视化(原型设计) 20 团队作业第一次——种子队伍选拔和团队展示 4 结对第二次作业——某次疫情统计可视化的实现 20 团队作业第二次—团队Github实战训练 8 团队作业第三次—项目需求分析 10

使用uniapp开发小程序中封装请求并使用promise处理

眉间皱痕 提交于 2020-07-25 10:43:13
使用uniapp开发小程序中封装请求并使用promise处理 1.在src中创建一个工具文件夹utils,在utils下创建请求封装文件request.js: 2.在request.js中封装自己的小程序请求,如: export default function ( config ) { // 从参数中解构 baseURL参数 const { baseURL } = config ; // 真正的vue插件 return function ( Vue ) { // 添加全局方法 Vue . prototype . http = async function ( params ) { // 请求参数 // console.log(params); const { url , method , data } = params ; // 真正的请求发出 const res = await uni . request ( { url : baseURL + '' + url , method , data , } ) ; return res [ 1 ] . data ; } ; } ; } 这里由于小程序中promise返回的是一个数组,数组索引为0的是错误信息,为null则没有错误,数组索引为1的项的data则是我们想要获得的放回数据,所以直接return出去 3

uniapp APP端使用指纹

风格不统一 提交于 2020-05-08 19:59:27
使用插件指纹模板: https://ext.dcloud.net.cn/plugin?id=358 Fingerprint模块管理指纹识别 要使用指纹识别功能需要具备条件: 确认当前设备环境是否支持指纹识别, 当前设备是否设置密码锁屏, 当前设备是否已经录入指纹。 (Android平台6.0及以上系统支持,只识别标准Android的指纹API,仅适配Google官方指纹识别的标准接口的设备) 以上条件都要满足才可以使用识别功能,识别功能,指的是与手机中已录入的指纹进行比对检测,也就是说,只要与手机中录入任意指纹比对成功,便可进入成功回调。 首先需要获取得到权限: 在 manifest.json文件中配置 因为目前市场上还是有很多设备不支持指纹,所以要先使用 plus.fingerprint.isSupport() 方法判断(以下三个方法均返回值为Boolean类型) // #ifdef APP-PLUS if (! plus.fingerprint.isSupport()) { plus.nativeUI.toast( ' 此设备不支持指纹识别 ' ); console.log( ' 此设备不支持指纹识别 ' ) } // #endif 再使用 plus.fingerprint.isKeyguardSecure() 判断是否开启密码锁屏 // #ifdef APP-PLUS if

uniapp实现微信小程序商品分类侧边栏效果

 ̄綄美尐妖づ 提交于 2020-05-07 01:58:36
前言:微信小程序的代码实现,uniapp与原生代码差异不大,语法格式可对比swiper实现的原生代码和scrollview实现的uniapp代码。 参考资料: 微信小程序api>> https://developers.weixin.qq.com/miniprogram/dev/component/scroll-view.html 获取元素/组件与顶部的距离>> https://www.jianshu.com/p/fe72cff2b808 swiper实现的简易demo>> https://blog.csdn.net/weixin_41599291/article/details/93650074 功能实现: 右侧滚动,左侧会对应高亮显示; 左侧是否重复点击,右侧显示相应数据,置顶; 实现思路: 围绕 scroll-view 组件的 scroll-into-view 和 scroll-top 属性展开 巨坑: for(let i in this.topList) 中的 i 属于字符串,执行计算操作时必须先转数字 int 效果图: 代码: <template> <view> <view style="text-align: center;">搜索栏</view> <view class='productNav'> <view class='left'> <view :class=

uniapp 用户拒绝授权再次调起授权-语音识别、微信地址、附近地址

南笙酒味 提交于 2020-05-07 01:50:32
小程序重构,采用 uniapp 框架。记录一下踩过的坑。关于用户拒绝再次调起授权,及如何识别语音识别、微信地址、附近地址的处理。 语音识别 组件 语音识别,小程序只有录音功能,若要识别录音文件,常规做法是把录音文件传递给后端,然后由后端调用百度或讯飞语音识别接口,然后返回结果。 但是微信小程序官方提供了“同声传译”插件,支持前端直接识别。可参考: 插件介绍 、 插件使用文档 uniapp 插件配置,在 manifest.json 文件中,源码模式,加入: ... "mp-weixin": { ... "plugins" : { // 语音识别 - 同声传译 "WechatSI" : { "version" : "0.3.1", "provider" : "wx069ba97219f66d99" } } } 调用 <template> <view @click="asrStart">语音识别</view> <view>{{arsRes}}</view> <!-- 语音识别 --> <wechat-asr ref="weixinAsr" @callback="asrResult"/> </template> <script> import WechatAsr from '@/components/wechatASR.vue'; export default { components: