1.0.7 • Published 4 years ago
st-dapp-sdk-js v1.0.7
安装起步
npm install st-dapp-sdk-js -S
ES-Module:
import dappSDK from "st-dapp-sdk-js";
dappSDK.gui.showToast({ message: "Hello World!", delay: 1000 });作为普通资源加载, 使用 node_modules/dappsdk/dist/index.js:
<script type="text/javascript" src="路径"></script>window.dappSDK.gui.showToast({ message: "Hello World!", delay: 1000 });不管你使用何种方式引入,
window.dappSDK始终存在.
回调与 Promise
首先, SDK 本身并不附带 promise, 如果你需要 promise, 请确保 window.Promise 存在.
所有的 API 均有一个可选的回调函数参数, 如果这个参数不存在, 那调用这个 API 将返回一个 Promise 实例:
window.dappSDK.system.getSdkInfo({}).then(({ version }) => alert(version));
window.dappSDK.system.getSdkInfo({}, function (err, data) {
if (err) {
return alert("Error: " + err.message);
}
var version = data.version;
alert(version);
});错误处理
在使用 callback 风格调用 API 的时候, 注意回调函数永远接收两个参数, 第一个为错误,
第二个为请求结果, 如果存在错误, 大部分情况请求结果会为空, 所以在代码中应使用 错误优先回调 :
window.dappSDK.system.getSdkInfo({}, function (err, data) {
if (err) {
var code = error.code;
console.log(code);
// 如果错误存在, 那么return可以保证之后的代码不执行
return alert("Error: " + err.message);
}
var version = data.version;
alert(version);
});错误
不管使用何种风格处理异步, error 都会包含 3 个变量, error.message, error.code, error.extra.
message 是对error的简单描述,
code 是 message 的映射,
extra 是 message 额外描述, 在大多数情况下, extra 为 undefined.
错误与状态码
| 状态码 | 错误 |
|---|---|
| -10001 | namespace 错误, 可能是 sdk 与 native 端的版本不对应, 尝试升级 app 和 sdk 到最新版本 |
| -10002 | function 错误, 可能是 sdk 与 native 端的版本不对应, 尝试升级 app 和 sdk 到最新版本 |
| -10003 | params 错误 |
| -10004 | 用户取消了操作 |
| -10005 以后 | 其他错误,根据 api 不同,文档中给于说明 |