|
@@ -1,8 +1,8 @@
|
|
|
-
|
|
|
-import { USER_ID, T_STORAGE_KEY, USER_INFO } from '../constant'
|
|
|
+
|
|
|
+import { USER_ID, T_STORAGE_KEY, USER_INFO, USER_TOKEN } from '../constant'
|
|
|
+
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
* @description 解决小数计算精度问题(en,你应该使用big.js)
|
|
|
* @param {Number, String} data 数字
|
|
@@ -170,25 +170,128 @@ export const getStorageKeyToken = () => {
|
|
|
}
|
|
|
|
|
|
|
|
|
- * 跳转到新团蜂入驻端项目
|
|
|
- * @returns
|
|
|
+ * 判断当前H5是否在webview中打开
|
|
|
*/
|
|
|
|
|
|
-export const jumpToOtherProject = (url, cb = () => { }) => {
|
|
|
+export const isH5InWebview = () => {
|
|
|
+ const ua = navigator.userAgent.toLowerCase()
|
|
|
+ return typeof ua === 'string' && (ua.includes('webview') || ua.includes('miniprogramhtmlwebview'))
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+export const isInWx = () => {
|
|
|
|
|
|
- window.location.href = url
|
|
|
+ var ua = navigator.userAgent.toLowerCase()
|
|
|
+ return ua.match(/MicroMessenger/i) == 'micromessenger'
|
|
|
|
|
|
+
|
|
|
|
|
|
- plus.runtime.openURL(url, cb)
|
|
|
-
|
|
|
-
|
|
|
- uni.redirectTo({
|
|
|
- url: `/user/view?target=${url}`
|
|
|
- })
|
|
|
+ return false
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
+ * 跳转到新团蜂入驻端项目
|
|
|
+ * @returns
|
|
|
+ */
|
|
|
+
|
|
|
+export const jumpToOtherProject = ({ isInMiniProgram, id, appId, url, toType, query, montageTerminal }, cb = () => { }) => {
|
|
|
+ if (toType === 'H5') {
|
|
|
+
|
|
|
+ window.location.href = url
|
|
|
+
|
|
|
+
|
|
|
+ plus.runtime.openURL(url, cb)
|
|
|
+
|
|
|
+
|
|
|
+ uni.redirectTo({
|
|
|
+ url: `/user/view?target=${url}`
|
|
|
+ })
|
|
|
+
|
|
|
+ } else if (toType === 'MP') {
|
|
|
+ if (isInWx()) {
|
|
|
+ if (isInMiniProgram || isH5InWebview()) {
|
|
|
+ wx.miniProgram.navigateTo({
|
|
|
+ url: query && montageTerminal && montageTerminal.includes(6) ? `/${url}${query}` : `/${url}`,
|
|
|
+ fail: () => {
|
|
|
+ setTimeout(() => { uni.switchTab({ url: '/pages/index/index' }) }, 2000)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ if (!getStorageKeyToken()) return
|
|
|
+ const currentUrl = window.location.href.replace('#', 'ericToken')
|
|
|
+ getConfigApi({
|
|
|
+ url: currentUrl,
|
|
|
+ token: uni.getStorageSync(USER_TOKEN)
|
|
|
+ }).then(({ data }) => {
|
|
|
+ wx.config({
|
|
|
+ debug: false,
|
|
|
+ appId: data.appId,
|
|
|
+ timestamp: data.timestamp,
|
|
|
+ nonceStr: data.nonceStr,
|
|
|
+ signature: data.signature,
|
|
|
+ jsApiList: [
|
|
|
+ 'updateAppMessageShareData',
|
|
|
+ 'updateTimelineShareData',
|
|
|
+ 'onMenuShareAppMessage',
|
|
|
+ 'onMenuShareTimeline'
|
|
|
+ ],
|
|
|
+ openTagList: [ 'wx-open-launch-weapp' ]
|
|
|
+ })
|
|
|
+ wx.ready(function () {
|
|
|
+
|
|
|
+
|
|
|
+ })
|
|
|
+ wx.error(function (res) {
|
|
|
+
|
|
|
+
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+
|
|
|
+ location.href = 'weixin://dl/business/?appid=wxb446588ba0dbb9d7&path=pages/index/index'
|
|
|
+
|
|
|
+
|
|
|
+ plus.share.getServices(function (result) {
|
|
|
+ let sweixin = null
|
|
|
+ for (const i in result) {
|
|
|
+ if (result[i].id == 'weixin') {
|
|
|
+ sweixin = result[i]
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (sweixin) {
|
|
|
+ sweixin.launchMiniProgram({
|
|
|
+ id,
|
|
|
+ type: 0,
|
|
|
+ path: query && montageTerminal && montageTerminal.includes(1) ? url + query : url
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }, function (e) {
|
|
|
+ console.log('获取分享服务列表失败:' + e.message)
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ uni.navigateToMiniProgram({
|
|
|
+ appId,
|
|
|
+ path: query && montageTerminal && (montageTerminal.includes(2) || montageTerminal.includes(4)) ? url + query : url,
|
|
|
+ extraData: {},
|
|
|
+ success: (res) => {
|
|
|
+ console.log('打开成功')
|
|
|
+ },
|
|
|
+ fail: (err) => {
|
|
|
+ console.log('打开失败', err)
|
|
|
+ },
|
|
|
+ complete: (result) => {
|
|
|
+ console.log(result)
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
* 点击复制
|
|
|
* @param {*} text
|
|
|
*/
|
|
@@ -312,18 +415,6 @@ export const getUrlCode = () => {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-export const isInWx = () => {
|
|
|
-
|
|
|
- var ua = navigator.userAgent.toLowerCase()
|
|
|
- return ua.match(/MicroMessenger/i) == 'micromessenger'
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- return false
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
|
|
|
* 大数转小数 12345.123 = 1.23万
|
|
|
*/
|
|
@@ -369,15 +460,6 @@ export const tradeOrderNo = function () {
|
|
|
}
|
|
|
|
|
|
|
|
|
- * 判断当前H5是否在webview中打开
|
|
|
- */
|
|
|
-
|
|
|
-export const isH5InWebview = () => {
|
|
|
- const ua = navigator.userAgent.toLowerCase()
|
|
|
- return typeof ua === 'string' && (ua.includes('webview') || ua.includes('miniprogramhtmlwebview'))
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
* 判断当前资源是否是视频格式
|
|
|
* @param {string} url
|
|
|
* @returns {boolean}
|