|
@@ -20,9 +20,12 @@ let router = '';
|
|
|
/**
|
|
/**
|
|
|
* @param {string} 当前页面地址信息
|
|
* @param {string} 当前页面地址信息
|
|
|
*/
|
|
*/
|
|
|
-export function loginWinxin() {
|
|
|
|
|
|
|
+export async function loginWinxin() {
|
|
|
console.log('1');
|
|
console.log('1');
|
|
|
let pages, page, path;
|
|
let pages, page, path;
|
|
|
|
|
+ if (!router) {
|
|
|
|
|
+ router = await setRouter();
|
|
|
|
|
+ }
|
|
|
try {
|
|
try {
|
|
|
pages = getCurrentPages();
|
|
pages = getCurrentPages();
|
|
|
// 获取跳转前页面
|
|
// 获取跳转前页面
|
|
@@ -37,7 +40,6 @@ export function loginWinxin() {
|
|
|
if (path != 'pages/redirect/redirect') {
|
|
if (path != 'pages/redirect/redirect') {
|
|
|
log.addLog('开始注册微信')
|
|
log.addLog('开始注册微信')
|
|
|
weixindata().then(() => {
|
|
weixindata().then(() => {
|
|
|
- console.log('2');
|
|
|
|
|
// 调用
|
|
// 调用
|
|
|
try {
|
|
try {
|
|
|
weixinSq();
|
|
weixinSq();
|
|
@@ -72,12 +74,16 @@ function weixinSq() {
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
// 微信注册
|
|
// 微信注册
|
|
|
-export function weixindata(config) {
|
|
|
|
|
|
|
+export async function weixindata(config) {
|
|
|
let url;
|
|
let url;
|
|
|
try {
|
|
try {
|
|
|
|
|
+ // 判断是否存在router
|
|
|
|
|
+ if (!router) {
|
|
|
|
|
+ router = await setRouter();
|
|
|
|
|
+ }
|
|
|
if (router.mode === "history") {
|
|
if (router.mode === "history") {
|
|
|
// 在ios中时候注册为微信刚进入时候的页面
|
|
// 在ios中时候注册为微信刚进入时候的页面
|
|
|
- if (window.entryUrl === '') {
|
|
|
|
|
|
|
+ if (!window.entryUrl) {
|
|
|
window.entryUrl = location.href.split('#')[0]
|
|
window.entryUrl = location.href.split('#')[0]
|
|
|
}
|
|
}
|
|
|
url = isAndroid() ? location.href.split('#')[0] : window.entryUrl;
|
|
url = isAndroid() ? location.href.split('#')[0] : window.entryUrl;
|
|
@@ -216,7 +222,24 @@ function shareFun(config) {
|
|
|
|
|
|
|
|
// 保存路由对象
|
|
// 保存路由对象
|
|
|
export function setRouter(route) {
|
|
export function setRouter(route) {
|
|
|
- router = route
|
|
|
|
|
|
|
+ return new Promise((ok, err) => {
|
|
|
|
|
+ router = getApp().$router;
|
|
|
|
|
+ console.log(router,'开始数据');
|
|
|
|
|
+ if (!router) {
|
|
|
|
|
+ const set = setInterval(() => {
|
|
|
|
|
+ router = getApp().$router;
|
|
|
|
|
+ console.log(router,'返回数据');
|
|
|
|
|
+ if (router) {
|
|
|
|
|
+ console.log(router,'结束');
|
|
|
|
|
+ clearInterval(set)
|
|
|
|
|
+ ok(router)
|
|
|
|
|
+ }
|
|
|
|
|
+ }, 100);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ console.log(router,'成功');
|
|
|
|
|
+ ok(router)
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|