123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- <template>
- <view>
- <view class="uni-add-tips-box" v-if="showTip">
- <view class='uni-add-tips-content' @tap='hideTip'>
- <text>{{tip}}</text>
- </view>
- </view>
- </view>
- </template>
- <script>
- const SHOW_TIP = "SHOW_TIP"
- export default {
- data() {
- return {
- showTip: false,
- }
- },
- mounted() {
- this.showTip = !uni.getStorageInfoSync().keys.includes(SHOW_TIP)
- // setTimeout(()=>{
- // this.showTip = false
- // },this.duration*3000)
- },
- props: {
- tip: {
- type: String,
- default: "点击「添加小程序」,下次访问更便捷",
- required: true
- },
- duration: {
- type: Number,
- default: 5,
- required: false
- }
- },
- methods: {
- hideTip() {
- uni.setStorageSync(SHOW_TIP, true)
- this.showTip = false
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- $themeColor:#5677fc; //主题色
- .uni-add-tips-box {
- position: fixed;
- top: CustomBar + 20rpx;
- right: -20rpx;
- z-index: 99999;
- opacity: 0.8;
- display: flex;
- justify-content: flex-end;
- align-items: flex-end;
- flex-direction: column;
- width: 600upx;
- animation: opacityC 1s linear infinite;
- }
- .uni-add-tips-content::before {
- content: "";
- position: absolute;
- width: 0;
- height: 0;
- top: -38upx;
- right: 105upx;
- border-width: 20upx;
- border-style: solid;
- display: block;
- border-color: transparent transparent $themeColor transparent;
- }
- .uni-add-tips-content {
- border-width: 0upx;
- margin-top: 20upx;
- position: relative;
- background-color: $themeColor;
- box-shadow: 0 10upx 20upx -10upx $themeColor;
- border-radius: 12upx;
- display: flex;
- align-items: center;
- justify-content: center;
- padding: 18upx 20upx;
- margin-right: 40upx;
- }
- .uni-add-tips-content>text {
- color: #fff;
- font-size: 28upx;
- font-weight: 400;
- }
- @keyframes opacityC {
- 0% {
- opacity: 0.8;
- }
- 50% {
- opacity: 1;
- }
- }
- </style>
|