<script>
export default {
    // 测试地址 http://192.168.31.108:8083/workflow-h5/#/?redirect=/pages/workflowTask/index?type=start&authtoken=eyJhbGciOiJIUzUxMiJ9.eyJjbGllbnQiOiJUUS1IVy1QQyIsImxvZ2luX3VzZXJfa2V5IjoiYjNiNWMxZTUtYTUzYi00NGJlLTljZTItMDcyMmIyNWNlMDhiIn0.FML-E-lEsH-CWzIM42_rZ1ImMcwqjTaeluHvULjoS5KiH79lQCqSBoUkiRHOekknCdJKFi5hkQ2HX3vmrntr0g
    onLaunch: function ({ path, query }) {
        console.log(path, 'App Launch', query)
        if (query.authtoken && query.redirect) {
            let authtoken = query.authtoken.replace(/ /g, '+')
            uni.setStorageSync("authtoken", authtoken)
            // this.$member.getMemberInfo()
            //额外参数
            let urlParams = ''
            for (let key in query) {
                if (key != 'authtoken' && key != 'redirect') {
                    urlParams += `&${key}=${query[key]}`
                }
            }
            urlParams=urlParams.replace('&','?')
            console.log('所有外部参数', urlParams)
            setTimeout(() => {
                uni.redirectTo({
                    url: `${query.redirect}${urlParams}`
                });
            }, 0);
        }
    },
    onShow: function () {
        if (uni.getStorageSync("authtoken")) {
            let bindWpTag = uni.getStorageSync("bindWpTag")
            // 如果是发起绑定
            if (bindWpTag) {
                this.$mpLogin
                    .bindWxMp()
                    .then(() => {
                        // 刷新个人页面
                        uni.reLaunch({
                            url: '/pages/personal/personal'
                        })
                    })
            }
        } else {
            let redirect = uni.getStorageSync("redirect")
            if (redirect) {
                this.$mpLogin
                    .setTip(this.$refs.uTips)
                    .go()
                    .then(() => {
                        // 跳转到首页
                        uni.switchTab({
                            url: '/pages/home/home'
                        })
                    })
            } else {
                // 直接redirectTo/reLaunch会导致小程序点击事件无法使用，需要增加延迟
                // reLaunch H5中会导致表单校验失效
                let timer = setTimeout(() => {
                    clearTimeout(timer)
                    uni.redirectTo({
                        url: 'pages/login/index'
                    })
                }, 0)
            }

        }
    }
}
</script>

<style lang="scss">
@import "uview-ui/index.scss";

/*每个页面公共css */
page,
.h100 {
    height: 100%;
}

.page-bg-color {
    background-color: $u-bg-color;
}

.page-card {
    border-radius: 20rpx;
    background-color: #fff;
    overflow: hidden;
}

.di-scroll {
    width: 100%;
    height: 100%;

    &-list {
        box-sizing: border-box;
        background-color: #fff;
        overflow: hidden;
        margin: 20rpx;
    }
}
</style>
