Files
dvcp_v2_wxcp_app/src/App.vue
2021-12-17 17:31:12 +08:00

166 lines
2.4 KiB
Vue

<script>
import {mapMutations, mapState} from 'vuex'
export default {
provide() {
return {
root: this,
}
},
onLaunch: function () {
this.repairWxSDK()
},
onShow: function () {
this.initWaterMarker()
},
onPageNotFound() {
this.logout()
},
computed: {
...mapState(['token', 'user']),
},
methods: {
...mapMutations(['initWaterMarker', 'logout', 'getConfig']),
goto(params, cb) {
let {path: url, query: {app}} = this.$route
params.query = {app, ...(params.query || {})}
uni.navigateTo({
url, success: () => {
this.$router.push({...params})
cb && cb()
}
})
},
repairWxSDK() {
wx = jWeixin
}
},
}
</script>
<style lang="scss">
@import '~uview-ui/index.scss';
@import './common/iconfont.css';
body {
font-family: 'Microsoft YaHei', serif;
}
uni-page-body {
// min-height: 100%;
height: 100vh;
background: #f5f5f5;
position: relative;
}
div[bottom] {
position: fixed;
left: 0;
bottom: 0;
width: 100%;
height: 128px;
padding: 24px 32px;
box-sizing: border-box;
background: #ffffff;
border-top: 1px solid #d4d4d4;
display: flex;
gap: 32px;
& > * {
flex: 1;
min-width: 0;
& + * {
margin-left: 32px;
}
}
}
div[flex] {
display: flex;
align-items: center;
&.spb {
justify-content: space-between;
}
&.wrap {
flex-wrap: wrap;
}
&.column {
flex-direction: column;
}
&.start {
align-items: flex-start;
}
}
div[shrink] {
flex-shrink: 0;
}
uni-button {
border-radius: 4px;
&.u-btn--primary {
background-color: $uni-color-primary !important;
border-color: $uni-color-primary !important;
}
&:after {
border-radius: 4px;
}
}
.fill {
flex: 1;
min-width: 0;
min-height: 0;
}
.u-form-item {
width: 100%;
min-height: 100px;
background: #ffffff;
padding: 0 32px !important;
box-sizing: border-box;
display: flex;
line-height: normal !important;
.u-form-item__body {
height: inherit;
flex: 1;
.u-form-item--left {
min-height: 100px;
}
.u-form-item--right__content__slot {
padding-bottom: 10px;
}
}
.u-form-item__message {
margin: 15px 0;
}
}
@keyframes mapWarn {
0% {
transform: scale(.5);
opacity: 1
}
30% {
opacity: .5
}
to {
transform: scale(1.4);
opacity: 0
}
}
</style>