FinClip为企业提供小程序生态圈技术产品,开发者可在FinClip小程序开发帮助中心找到相关FinClip小程序指引

# 小组件 API

# 通用 API

# onAppShow

ft.onAppShow(function callback)

监听应用切前台事件

参数

function callback

应用切前台事件的回调函数

示例代码

function show() {
  console.log('on app show')
}
ft.onAppShow(show)

ft.offAppShow(show)

# onAppHide

ft.onAppHide(function callback)

监听应用切后台事件

参数

function callback

应用切后台事件的回调函数

示例代码

function hide() {
  console.log('on app hide')
}
ft.onAppHide(hide)

ft.offAppHide(hide)

# offAppShow

ft.offAppShow(function callback)

取消监听应用切前台事件

参数

function callback

应用切前台事件的回调函数

# offAppHide

ft.offAppHide(function callback)

取消监听应用切后台事件

参数

function callback

应用切后台事件的回调函数

navigateToMiniProgram(Object object)

打开另一个小程序

参数

Object object

属性 类型 默认值 必填 说明
appId string 要打开的小程序 appId
path string 打开的页面路径,如果为空则打开首页。path 中 ? 后面的部分会成为 query,在小程序的 App.onLaunch、App.onShow 和 Page.onLoad 的回调函数或小游戏的 ft.onShow 回调函数、ft.getLaunchOptionsSync 中可以获取到 query 数据。
extraData Object 需要传递给目标小程序的数据,目标小程序可在 App.onLaunch,App.onShow 中获取到这份数据。如果跳转的是小游戏,可以在 ft.onShow、ft.getLaunchOptionsSync 中可以获取到这份数据数据。
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行

示例

ft.navigateToMiniProgram({
  appId: '',
  path: 'page/index/index?id=123',
  extraData: {
    foo: 'bar'
  },
  success(res) {
    // 打开成功
  }
})

navigateToWechatMiniProgram(Object object)

跳转打开微信小程序

参数

Object object

属性 类型 默认值 必填 说明
originId string 原始 ID
path string 打开的页面路径,如果为空则打开首页。path 中 ? 后面的部分会成为 query,在小程序的 App.onLaunch、App.onShow 和 Page.onLoad 的回调函数或小游戏的 ft.onShow 回调函数、ft.getLaunchOptionsSync 中可以获取到 query 数据。
envVersion String release 要打开的小程序版本。仅在当前小程序为开发版或体验版时此参数有效。如果当前小程序是正式版,则打开的小程序必定是正式版。
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行

object.envVersion 的合法值

说明 最低版本
develop 开发版
trial 体验版
release 正式版

示例

ft.navigateToWechatMiniProgram({
  originId: '',
  path: 'page/index/index?id=123'
})

# 自定义 API

# loadExtApi

loadExtApi(Object object)

加载自定义 API 配置,与 FinClipConf.js 的配置等效。

SDK 端配置文档参考:

iOS 自定义 API 配置文档 (opens new window)

Android 自定义 API 配置文档 (opens new window)

参数

单个 API 项目的参数如下

属性 类型 必填 说明
name string 自定义 API 名称
sync boolean 是否为同步 API
params object 参数格式,可以只列必须的属性,如无限制,可直接使用空对象

示例代码

ft.loadExtApi([
    {
      name: 'finclipLogin',
      sync: false,
      params: {
        url: ''
      }
    },
    {
      name: 'finclipTestSync',
      sync: true,
      params: {
          name:'',
          title:''
      }
    }
  ])

// 异步调用示例
ft.finclipLogin({
  url: 'some url'
  success: (res) => { console.log(res) },
  fail: (res) => { console.log(res) },
})

// 同步调用示例
const res = ft.finclipTestSync({ name: '', title: ''})
console.log(res)

# 网络

# request

request(Object object)

利用原生Api发起HTTP网络请求,执行后返回 RequestTask 对象。

参数

Object object

属性 类型 默认值 必填 说明
url string 开发者服务器接口地址
data string/object/ArrayBuffer 请求的参数
header Object 设置请求的 header,header 中不能设置 Referer。content-type 默认为 application/json
method string GET HTTP 请求方法
timeout number 超时时间,单位为毫秒
dataType string json 返回的数据格式
responseType string text 响应的数据类型
forceCellularNetwork boolean false wifi下使用移动网络发送请求(仅安卓支持)
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

object.method 的合法值

说明
OPTIONS HTTP 请求 OPTIONS
GET HTTP 请求 GET
HEAD HTTP 请求 HEAD
POST HTTP 请求 POST
PUT HTTP 请求 PUT
DELETE HTTP 请求 DELETE
TRACE HTTP 请求 TRACE
CONNECT HTTP 请求 CONNECT

object.dataType 的合法值

说明
json 返回的数据为 JSON,返回后会对返回的数据进行一次 JSON.parse
其他 不对返回的内容进行 JSON.parse

object.responseType 的合法值

说明
text 响应的数据为文本
arraybuffer 响应的数据为 ArrayBuffer

object.success 回调函数

参数

Object res

属性 类型 说明
data string/object/ArrayBuffer 开发者服务器返回的数据
statusCode number 开发者服务器返回的 HTTP 状态码
header Object 开发者服务器返回的 HTTP Response Header

示例代码

ft.request({
  url: 'test.php', // 仅为示例,并非真实的接口地址
  data: {
    x: '',
    y: ''
  },
  header: {
    'content-type': 'application/json' // 默认值
  },
  success(res) {
    console.log(res.data)
  }
})

# RequestTask.abort

基础库2.4.2开始支持,iOS版本2.13.59,Android版本2.13.34

RequestTask.abort()

中断请求任务

示例代码

const task = ft.request({
  // some params
})
// 中断请求
task.abort()

# RequestTask.onHeadersReceived

基础库2.4.2开始支持,iOS版本2.13.59,Android版本2.13.34

RequestTask.onHeadersReceived(function callback)

监听 HTTP Response Header 事件,会比请求完成事件更早。

参数

function callback

Header Received 事件的回调函数

回调函数参数

Object res

属性 类型 说明
header Object 开发者服务器返回的 HTTP Response Header

# RequestTask.offHeadersReceived

基础库2.4.2开始支持,iOS版本2.13.59,Android版本2.13.34

RequestTask.offHeadersReceived(function callback)

取消监听 HTTP Response Header 事件。

参数

function callback

Header Received 事件的回调函数

# 数据缓存

# setStorageSync

setStorageSync(string key, any data)

ft.setStorage 的同步版本

参数

string key

本地缓存中指定的 key

any data

需要存储的内容。只支持原生类型、Date、及能够通过 JSON.stringify 序列化的对象。

示例代码

ft.setStorage({
  key: 'key',
  data: 'value'
})

try {
  ft.setStorageSync('key', 'value')
} catch (e) { }

# setStorage

setStorage(Object object)

将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容。数据存储生命周期跟小程序本身一致,即除用户主动删除或超过一定时间被自动清理,否则数据都一直可用。所有数据存储上限为 10MB。

参数

Object object

属性 类型 默认值 必填 说明
key string 本地缓存中指定的 key
data any 需要存储的内容。只支持原生类型、Date、及能够通过 JSON.stringify 序列化的对象。
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

ft.setStorage({
  key: 'key',
  data: 'value'
})

try {
  ft.setStorageSync('key', 'value')
} catch (e) { }

# removeStorageSync

removeStorageSync(string key)

ft.removeStorage 的同步版本

参数

string key

本地缓存中指定的 key

示例代码

ft.removeStorage({
  key: 'key',
  success(res) {
    console.log(res)
  }
})

try {
  ft.removeStorageSync('key')
} catch (e) {
  // Do something when catch error
}

# removeStorage

removeStorage(Object object)

从本地缓存中异步移除指定 key 对应的内容

参数

Object object

属性 类型 默认值 必填 说明
key string 本地缓存中指定的 key
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

ft.removeStorage({
  key: 'key',
  success(res) {
    console.log(res)
  }
})

try {
  ft.removeStorageSync('key')
} catch (e) {
  // Do something when catch error
}

# getStorageSync

getStorageSync(string key)

ft.getStorage 的同步版本

参数

string key

本地缓存中指定的 key

返回值

any

key 对应的本地存储内容

示例代码

ft.getStorage({
  key: 'key',
  success(res) {
    console.log(res.data)
  }
})

try {
  const value = ft.getStorageSync('key')
  if (value) {
    // Do something with return value
  }
} catch (e) {
  // Do something when catch error
}

# getStorageInfoSync

getStorageInfoSync(Object object)

ft.getStorageInfo 的同步版本

返回值

Object object

属性 类型 说明
keys Array.<string> 当前 storage 中所有的 key
currentSize number 当前占用的空间大小, 单位 KB
limitSize number 限制的空间大小,单位 KB

示例代码

ft.getStorageInfoSync({
  success(res) {
    console.log(res.keys)
    console.log(res.currentSize)
    console.log(res.limitSize)
  }
})

try {
  const res = ft.getStorageInfoSync()
  console.log(res.keys)
  console.log(res.currentSize)
  console.log(res.limitSize)
} catch (e) {
  // Do something when catch error
}

# getStorageInfo

getStorageInfo(Object object)

获取当前storage的相关信息。

参数

Object object

属性 类型 默认值 必填 说明
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数

Object res

属性 类型 说明
keys Array.<string> 当前 storage 中所有的 key
currentSize number 当前占用的空间大小, 单位 KB
limitSize number 限制的空间大小,单位 KB

示例代码

ft.getStorageInfo({
  success(res) {
    console.log(res.keys)
    console.log(res.currentSize)
    console.log(res.limitSize)
  }
})

try {
  const res = ft.getStorageInfoSync()
  console.log(res.keys)
  console.log(res.currentSize)
  console.log(res.limitSize)
} catch (e) {
  // Do something when catch error
}

# getStorage

getStorage(Object object)

从本地缓存中获取指定key对应的内容。

参数

Object object

属性 类型 默认值 必填 说明
key string 本地缓存中指定的 key
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数

Object res

属性 类型 说明
data any key对应的内容

示例代码

ft.getStorage({
  key: 'key',
  success(res) {
    console.log(res.data)
  }
})

try {
  const value = ft.getStorageSync('key')
  if (value) {
    // Do something with return value
  }
} catch (e) {
  // Do something when catch error
}

# clearStorageSync

clearStorageSync(Object object)

ft.clearStorage 的同步版本

示例代码

ft.clearStorage()

try {
  ft.clearStorageSync()
} catch (e) {
  // Do something when catch error
}

# clearStorage

clearStorage(Object object)

清理本地数据缓存

参数

Object object

属性 类型 默认值 必填 说明
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

ft.clearStorage()

try {
  ft.clearStorageSync()
} catch (e) {
  // Do something when catch error
}

# 通讯 API

# onCustomEvent

onCustomEvent(callback)

监听原生发送的 "onCustomEvent" 事件。

ios 调用方式

android 调用方式

示例代码

const callback = (res) => {
    console.log(res) // 获取原生传递的参数
}
ft.onCustomEvent(callback)

# offCustomEvent

offCustomEvent(callback)

取消监听onCustomEvent事件。当 callback 为空时,清除所有 callback

示例代码

const callback = (res) => {}
ft.onCustomEvent(callback)

// 清除指定 callback
ft.offCustomEvent(callback)
// 清除所有 callback
ft.offCustomEvent()

# addCustomEventListener

addCustomEventListener(eventName, callback)

本事件是基于 onCustomEvent 的封装,可有效减少 onCustomEvent 内的模板代码

注意 使用本事件时,若要正常触发,SDK 调用事件时,数据体必须要有 name 字段,标明触发的是哪个 eventName

例如:

{
  name: 'someMethod', // 必需字段
  data: {
    a: 'data-1',
    b: 'data-2',
    c: 1001
  },
  errMsg: 'some error msg'
}

整体数据会透传给 callback

示例代码

const callback = (res) => {
    console.log(res) // 获取原生传递的参数
}
ft.addCustomEventListener('someMethod', callback)

# removeCustomEventListener

removeCustomEventListener(eventName, callback)

移除 addCustomEventListener 的监听

示例代码

const callback = (res) => {
    console.log(res) // 获取原生传递的参数
}
ft.removeCustomEventListener('someMethod', callback)
© FinClip with ❤ , Since 2017