版本要求:
从小程序基础库版本 1.6.3 开始,小程序支持简洁的组件化编程。开发者可以将页面内的功能模块抽象成自定义组件,以便在不同的页面中重复使用;也可以将复杂的页面拆分成多个低耦合的模块,有助于代码维护。
注意:自定义组件在使用时与基础组件非常相似
构成部分,每个自定义组件由四个代码文件组成:
①json文件 用于于放置一些最基本的组件配置
②wxml 文件 组件模版
③wxss ...
事件类型
在编写代码中,使用频率高的事件方式是
单击:tap
长按:longtap
滑动:touchstart、touchmove、touchend、touchcancel
事件绑定
事件绑定的写法同组件的属性,以 key、value 的形式
①key 以bind或catch开头,然后跟上事件的类型,如bindtap、catchtap等。自基础库版本 1.5.0 起,在非原生组件中...
手势冲突主要的三种解决思路:
①设置手势优先级 requireGestureRecognizerToFail:
②阻止手势向事件传递链执行 cancelsTouchesInView、delaysTouchesBegan
③实现协议方法 UIGestureRecognizerDelegate
1、自定义手势优先级
自定义多手势冲突。例如我们设置的单次点击、双击和多指点击手势,需要设...
时间:2021-02-13 分类:
iOS
标签:
UIWebView
WKWebView
WebViewJavascriptBridge
1、UIWebView JS 与 OC 交互
UIWebView 在 iOS12 中已经被废弃,同时WKWebView在iOS8中已经出现。所以无特殊情况的话,我们一般应该也是用不到前者了!
UIWebView 相比于 WKWebView 的使用上会简单很多。
UIWebView 初始化:
-(void)loadUIWebViewWithName:(NSString *)name{
...
//分享好友
onShareAppMessage: function () {
var that = this;
return new Promise((resolve,reject)=>{
wx.showLoading({
title: '正在生成中...',
icon: 'none'
})
var ...
算法概述
常见排序算法可以分为两大类:
1.算法分类
比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。
非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。
2.算法复杂度
3.相关概念
稳定:如果a原本在b前面,而a=b,...
需求说明
可以随意切换环境状态
支持自定义环境地址
支持关闭切换环境功能
恢复默认设置
实现效果
核心实现
GPAPIManager.h
#import <Foundation/Foundation.h>
#define HOST_TYPE 0
#if HOST_TYPE == 0
#define kIsProductio...
前言
微信小程序 View视图标签支持两种布局方式:Block 和 Flex
注意:
所有 View 默认都是 block浮动布局,所以如果要使用 flex 布局的话需要进行显式声明
容器与项目元素
日常开发中,采用flex布局的元素,一般简称为“容器”
容器内的元素简称为“项目”或者“元素”
主轴与交叉轴
在介绍各个属性之前,需要先明确一个坐标轴
水平方向的是主轴(mai...
一、背景
随着各业务流量红利逐渐见顶,如何在有限的流量下,提升流量给用户带来的体验,对流量进行精细化运营,进而提升转化效率,成为各业务的重要课题。
蚂蚁数字金融线包含了 保险/理财/信用/借贷 等业务,经过多年建设,形成了多样的金融资产/场景服务/权益/内容等多维度的产品去服务用户,而这些产品分发给用户时,决定曝转率的大体上以产品推荐是否精准,以及产品以什么样的UI表述方式进行展示决定。在...
一、前言
在移动app使用手机号码登录的场景中,传统模式的步骤如下:
输入手机号码
接收验证码
输入接收到的验证码
点击登陆
最近看到很多应用都采用了一种新的模式—本机号码一键登录 ,这种模式对于用户来说,只需要确认下手机号码是否正确,点击确认登陆即可,即需要操作传统模式的最后一步,方便快捷,抖音、淘宝等应用均已经接入。
那么本机号码一键登录的原理是什么呢?下面我们...