uni.app学习记录

1.双击

 if(this.tabClick){
				console.log("我这里是双击的事件");
				 console.log(id);
				 this.toSees = true
				 }
				this.tabClick = true;
				setTimeout(()=>{
				this.tabClick = true
				},200)

2.vuex使用

根目录下新建store文件夹,建index.js文件夹
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
	state: {
		hasLogin: false,
		userInfo: {},
		datas:123
	},
	mutations: {
		login(state, provider) {
			state.hasLogin = true;
			state.userInfo = provider;
			uni.setStorage({ //缓存用户登陆状态
				key: 'userInfo',
				data: provider
			})
		},
		seting(state,datas){
		return state.datas = datas	
		},
		logout(state) {
			state.hasLogin = false;
			state.userInfo = {};
			uni.removeStorage({
				key: 'userInfo'
			})
		}
	},
	actions: {

	}
})

export default store


挂载main.js

在这里插入图片描述

使用方式

在这里插入图片描述版本号 console.log(plus.runtime.version,‘版本号’)

3.检查更新 https://blog.csdn.net/zhuangvi/article/details/112430585

4.对象的键和值的提取

在这里插入图片描述

5.app蒙版禁止滑动@touchmove.stop.prevent 标签内添加

6.弹窗效果 css动画

/*弹层动画(从上往下)*/

.fadeIn {
    -webkit-animation: fadeInDown .3s;
    animation: fadeInDown .3s;
}

@keyframes fadeInDown {
    0% {
        -webkit-transform: translate3d(0, -20%, 0);
        -webkit-transform: translate3d(0, -20%, 0);
        transform: translate3d(0, -20%, 0);
        transform: translate3d(0, -20%, 0);
        opacity: 0;
    }
    100% {
        -webkit-transform: none;
        transform: none;
        opacity: 1;
    }
}

@-webkit-keyframes fadeInDown {
    0% {
        -webkit-transform: translate3d(0, -20%, 0);
        opacity: 0;
    }
    100% {
        -webkit-transform: none;
        opacity: 1;
    }
}


/*弹层动画(从下往上)*/

.fadelogIn {
    -webkit-animation: fadelogIn .4s;
    animation: fadelogIn .4s;
}

@keyframes fadelogIn {
    0% {
        -webkit-transform: translate3d(0, 100%, 0);
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
    100% {
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes fadelogIn {
    0% {
        -webkit-transform: translate3d(0, 100%, 0);
    }
    100% {
        -webkit-transform: none;
    }
}


/*弹层动画(从右往左)*/

.fadeleftIn {
    -webkit-animation: fadeleftIn .4s;
    animation: fadeleftIn .4s;
}

@keyframes fadeleftIn {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
    100% {
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes fadeleftIn {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
    }
    100% {
        -webkit-transform: none;
    }
}


/*弹层动画(放大)*/

.popIn {
    -webkit-animation: fadeleftIn .4s;
    animation: fadeleftIn .4s;
    -webkit-animation-name: popIn;
    animation-name: popIn;
}

@-webkit-keyframes popIn {
    0% {
        -webkit-transform: scale3d(0, 0, 0);
        transform: scale3d(0.5, 0.5, 0.5);
        opacity: 0;
    }
    50% {
        -webkit-animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
        animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
    }
    100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
        animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
        opacity: 1;
    }
}

@keyframes popIn {
    0% {
        -webkit-transform: scale3d(0, 0, 0);
        transform: scale3d(0.5, 0.5, 0.5);
        opacity: 0;
    }
    50% {
        -webkit-animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
        animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
    }
    100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
        animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
        opacity: 1;
    }
}
7 数组里面大小排序

在这里插入图片描述

8 拉取内容进行搜索
<template>
<div>
  <input type="text" v-model="search">
  <ul>
   <li v-for="(item,index) in items">
    <span>{{item.name}}</span>
    <span>{{item.series}}</span>
	 nainasdfasdfasgdf <span>{{item.year}}</span>
    <span>{{item.price}}</span>
   </li>
  </ul>
 </div>
</template>
<script>
	import {mapGetters,mapStates,mapActions,mapMutations} from "vuex"
  export default {
    data() {
      return {
    search:'',
	match:[],
   list:[
  //{name/series}
   ]
      }
    },
	created() {
	this.settings()
	},
    computed: {
  //过滤方法
  items(){
   let _search = this.search;
   if (_search) {
    //不区分大小写处理
    let reg = new RegExp(_search, 'ig');
    //es6 filter过滤匹配,有则返回当前,无则返回所有
    return this.list.filter((e)=> {
     //匹配所有字段
     return Object.keys(e).some((key) =>{
      return e[key].match(reg);
     })
     //匹配某个字段 比如name
     // return e.name.match(reg);
    })
   };
   return this.list;
  },
  needSearchData(){
	  let match = this.match ;
	  return this.$store.getters.need;
  }
 },
    methods: {
     settings(){
		 let lists = [];
		 this.needSearchData.forEach((item,index)=>{
			 let newObj = {
				 name:item.classifyRelation.name,
				 series:item.classifyRelation.series,
				 year:item.classifyRelation.year,
				 price:item.classifyRelation.price
			 };
			 lists.push(newObj)
		 });
		 this.list = lists;
	 }
  },
  }
</script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值