UNPKG

saven

Version:
53 lines (46 loc) 1.05 kB
import router from '@system.router' export function navigateTo (options = {}) { return qappNavigate(options) } export function redirectTo (options = {}) { return qappNavigate(options, 'replace') } function qappNavigate (options = {}, method = 'push') { const { url = '', success, fail, complete } = options const res = { errMsg: 'ok' } return new Promise((resolve, reject) => { let params = {} if (!url) { res.errMsg = 'url不能为空' fail && fail(res) reject(res) return } params = getUrlParams(url) try { router[method]({ uri: url, params, }) success && success(res) complete && complete(res) resolve(res) } catch (data) { res.errMsg = 'error' res.data = data fail && fail(res) reject(res) } }) } function getUrlParams (url = '') { let params = {}   url && url.replace(/(\w+)=(\w+)/igfunction (a, b, c) { params[b] = unescape(c) })   return params } export { navigateTo, redirectTo }