UE4動畫系統:什麼是動畫通知
技術標籤:小程式
正在獲取訂單中... ~暫無訂單資料~var id = e.currentTarget.dataset.id;
/* 彈出或關閉動畫來動態設定內容高度 */
@keyframes slideBGtUp {
from {
background: transparent;
}
to {
background: rgba(0, 0, 0, 0.1);
}
}
@keyframes slideBGDown {
from {
background: rgba(0, 0, 0, 0.1);
}
to {
background: transparent;
}
}
/* 顯示或關閉內容時動畫 */
.openBG {
/* animation-fill-mode: both 動畫將會執行 forwards 和 backwards 執行的動作。 */
}
.closeBG {
animation: slideBGDown 0.5s ease-in both;
/* animation-fill-mode: both 動畫將會執行 forwards 和 backwards 執行的動作。 */
}
/* 彈出或關閉動畫來動態設定內容高度 */
動畫
@keyframes slideContentUp {
from {
height: 0;
}
to {
}
}
@keyframes slideContentDown {
from {
height: 950rpx;
}
to {
height: 0;
}
}
/* 顯示或關閉內容時動畫 */
.open {
animation: slideContentUp 0.1s ease-in both;
/* animation-fill-mode: both 動畫將會執行 forwards 和 backwards 執行的動作。 */
}
.close {
animation: slideContentDown 2s ease-in both;
/* animation-fill-mode: both 動畫將會執行 forwards 和 backwards 執行的動作。 */
bindtouchstart=“bindyueben” bindtouchend=“handleTouchEnd”
button 紅 :#d85b57
文字超出隱藏出現省略號
overflow: hidden;
text-overflow:ellipsis;
white-space: nowrap;
setTimeout(function() {
console.log('我是首頁')
}, 3000);
正在載入的樣式
hidden=’{{infoThree==""?false:true}}’
setTimeout(function () {
if (that.data.list.length == 0) {
that.setData({
isinfoThree : true
})
}
}, 3000);
.noinfoImg {
display: inline-block;
width: 100rpx;
height: 100rpx;
margin-bottom: 10rpx;
}
.noinfo text {
width: 100%;
text-align: center;
float: left;
color: #888;
font-size: 26rpx;
}
.list_none{
color:#5F6062;
font-size: 26rpx;
text-align: center;
margin-top:50rpx;
}
url: app.host + ‘/upload/webUploaderImage’,
返回上一層
wx.vibrateShort();
wx.switchTab({
url: ‘/pages/home/dashboard/index’,
})
var title = res.data.filter(f => f.enter_mendian == 1);
背景過渡顯示漸變
background: linear-gradient(to right, rgb(180, 178, 178), rgb(58, 57, 57));
文字超出三行出現省略號
.cu-form-group .title {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
}
/* 資料為空 和載入中的樣式 */
.js_jiazai {
display: flex;
justify-content: center;
align-items: center;
}
.js_jiazai view {
color: lightslategrey;
}
.js_jiazai image {
width: 50rpx;
height: 50rpx;
margin-right: 4rpx;
}
.no_goodlist {
display: flex;
flex-direction: column;
align-items: center;
margin-top: 150rpx;
}
.no_goodlist view {
margin-top: 20rpx;
color: lightslategrey;
}
.no_goodlist image {
width: 150rpx;
height: 150rpx;
}
/* 資料為空 和載入中的樣式 */
全域性樣式修改
business_center_color: ‘’,
color=’{{business_center_color}}’
this.setData({
business_center_color: app.business_center_color,
})
路徑相關:
pages/business/pages/usercenter/free_time 空閒時間
陰影
box-shadow: 1px 1px 5px #d1d1d1;
setData 屬性賦值的基本寫
this.setData({
Political_outlook_index: e.detail.value,
'info.Political_outlook': this.data.Political_outlook[e.detail.value].id
});
button 按鈕 顏色
background: rgb(253, 195, 4);
color: #000;
var pages = getCurrentPages();
var Page = pages[pages.length - 1];//當前頁
var prevPage = pages[pages.length - 2]; //上一個頁面
var info = prevPage.data //取上頁data裡的資料也可以修改
複製
wx.setClipboardData({
data: path,
success(res) {
wx.showToast({
title: ‘複製成功’,
})
}
})
引數拼接
url: ‘/pages/timeline/pages/questionnaire?id=’ + id + ‘&name=’ + name,
微信小程式快速查詢行 corl +g
console.info(’[app:wx:login:success]’, a);
//獲取錯誤資訊
try {
var shopid = wx.getStorageSync(‘shopid’)
} catch (e) {
// Do something when catch error
}
微信小程式阻止點選事件冒泡行為
將事件的 bind 改成 catch
bind 是阻止不了冒泡的,catch 可以阻止事件的冒泡行為
例如 bindtap 改成 catchtap
訊息提示窗
wx.showToast({
title: ‘沒有更多蹤跡了’,
image: ‘…/…/…/images/z7.png’
});
頁面吸頂
onPageScroll中可以得到滑動距離頂部的距離,在data公共資料中定義scrollTop,程式碼如下
onPageScroll: function (t) {
var a = this;
// console.log(t.scrollTop)
a.setData({
scrollTop:t.scrollTop
})
class="{{scrollTop>758 ? ‘rel’ : ‘nav’}}"
rel{
position: fixed;
top:52px;
}
onPageScroll:function(e){
console.log(e)
this.setData({
scrollTop:e.scrollTop
})
},
設定定時器 與清理定時器
that.myVar= setInterval(function () {
app.carmen({
api: ‘/index/get_order_status’,
query: {
activity_id
},
success: res => {
if(res.data.is_ver!=0){
wx.showToast({
title: ‘核銷成功’,
image: ‘…/…/img/z7.png’
});
that.setData({
modalName:null
})
clearInterval(that.myVar);
that.setData({
activity_list:[]
})
that.loadinfo()
}
}
})
}, 3000);
box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
上拉觸底距離
“onReachBottomDistance”:50
“navigationStyle”: “custom”
查詢陣列中指定的物件屬性並返回索引
var filterArr = arr.filter(function(elem, index,arr){
return elem.age>=18
}) [{name:“dan”,age:18},{name:“yue”,age:22}]
JavaScript 根據物件某屬性獲得其在陣列中的index
var arr = new Array({“name”: “wxx”, “age”: 2}, {“name”: “wyw”, “age”: 6});
var index = arr.findIndex(function(item) {
return item.name === “wyw”;
});
console.log(index);
上傳圖片限制
function selecImg(page_that, cb_key, count) {
console.log(“選擇圖片”);
wx.chooseImage({
count: count,
sizeType: [‘compressed’],
sourceType: [‘album’, ‘camera’],
success: function(res) {
console.log(res)
var pathArray = [];
var PicNums = res.tempFiles.length;
for (var inta = 0; inta < PicNums; inta++) {
var size = res.tempFiles[inta].size;
var path = res.tempFiles[inta].path;
var formatImage = path.split(".")[(path.split(".")).length - 1];
console.log(“圖片格式” + formatImage)
if (formatImage != “png” && formatImage != “jpg” && formatImage != “jpeg”) {
return wx.showToast({
title: ‘只能上傳.png、.jpg、.jpep 格式’,
icon: ‘none’,
image: ‘’,
duration: 2000,
mask: true,
})
}
if (config.image_size < size) {
return wx.showToast({
title: ‘圖片大小限制:’ + (config.image_size / 1024 / 1024) + “MB”, ///config.image_size 配置檔案中設定
icon: ‘none’,
image: ‘’,
duration: 1500,
mask: true,
})
}
pathArray.push(path);
if (inta == PicNums-1) {
var cb = {};
cb[cb_key] = pathArray;
page_that.setData(cb);
}
}
}
})
}
————————————————
版權宣告:本文為CSDN博主「生生不息的希望」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/weixin_39589065/article/details/102369626
監聽頁面解除安裝
onUnload: function () {
console.log(‘監聽頁面解除安裝’)
wx.setStorageSync(‘yxhdp’, 0)
},
無重新整理刪除
var list = that.data.list;
list.splice(index, 1);
that.setData({
list: list,
});
下拉重新整理
“enablePullDownRefresh”: true,
“navigationBarTextStyle”: “light”,
“backgroundColor”: “#d8d8d8”
5:4
width: 130px;
height: 104px;
wx.showToast({
title: `切換到標籤 ${event.detail.name}`,
icon: 'none',
});
“disableScroll”: true,
d && (d.is_clothing = 1), that.setData({
list:list
})
to_home:跳轉首頁樣式
// 跳轉首頁
bindto_home:function(){
wx.switchTab({
url: ‘/pages/home/dashboard/index’,
})
},
wx:for="{{ componentSKU.goods.sku.tree }}"
wx:for-item="skuKey"
wx:for-index="skuKeyIndex"
wx:key="id"
color ui 省略號
text-cut
設定不透明度
opacity
快捷鍵
corl + p 快速查詢檔案
微信小程式快速查詢行 corl +g
var a = res.data.response
樣式
.rw{
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
wx.showToast({
title: ‘已提交稽核…’,
image: ‘…/…/img/z11.png’
})
新版分類
pages/category/list/index
“pages/buy/buy”,
this.showZanToast(‘請填寫詳細地址’), {
type: ‘empty’,
field: ‘address_detail’
})
只要將wx.request的header改為 ‘content-type’: ‘application/x-www-form-urlencoded’ 請求引數自然就變成了form-data形式
[app:wx:checkSession]
console.log(‘loadList:’, res);
身份證正則
var regIdNo = /(\d{}$)|(^\d{}$)|(\d{}(\d|X|x)$)/;
if(!regIdNo.test(idNo)){
alert(‘身份證號填寫有誤’);
return false;
}
wx.showToast({
title: '您沒有積分不能檢視',
icon: 'none',
duration: 2000
});
map 篩選id 返回新的陣列
var tmpid = list.map(f => f.tmpid);
console.log(tmpid)
反轉陣列
res.data.reverse();+
//會員搜尋
loadsearch()
if (tab_index == 3) {
setTimeout(function () {
wx.hideLoading();
that.loadvipList();
}, 1000)
}
if (tab_index == 2) {
setTimeout(function () {
wx.hideLoading();
that.loadyuyueList();
}, 1000)
}
if (tab_index == 4) {
setTimeout(function () {
wx.hideLoading();
that.loadxiaofeiList();
}, 1000)
}
vipkeyword
loadvipsearch
loadyuyuesearch
loadxiaofeisearch
yuyuekeyword
loadvipList
juben_shenfen_radioChange
bind_modify_juben_shenfen
https://image.caiyunyi.com/img/20200803/75de8c057b66b96cb9b98e52af8e7235.gif
https://image.caiyunyi.com/img/20200724/57e9b765109fb899504d7c55fa557aba.png?imageMogr2/quality/60
https://image.caiyunyi.com/img/20200723/a546bed648ede2f2d98cc5e4f96c455d.png?imageMogr2/quality/60
https://image.caiyunyi.com/image/20200810/166f47d512975d0ccd857a1139690d57.png
https://image.caiyunyi.com/image/20200810/ebc2f58982c7189f75ebb6fd8dbfba13.png
@media screen and (min-width: 700px) {
.container {
padding: 30rpx;
}
}
@media screen and (max-width: 700px) {
.container {
padding: 60rpx;
}
}
顯示長按二維碼
show-menu-by-longpress
http://2020-ljw-admin.dev.000.ztj.xyz/admin/member_info
http://xima.tv/x9W58L
時間戳
JSON.parse(jsonstr); //可以將json字串轉換成json物件
JSON.stringify(jsonobj); //可以將json物件轉換成json對符串
business_center_color:’#FAA741’,
business_center_background:‘linear-gradient(to bottom, #ca914b 0%, #b4701c 100%);’,
setColor
int.setColor(that)
1、JS中的||符號:
運算方法:
只要“||”前面為false,不管“||”後面是true還是false,都返回“||”後面的值。
只要“||”前面為true,不管“||”後面是true還是false,都返回“||”前面的值。
獲取螢幕寬度
wx.getSystemInfo({
success(res) {
console.log(res.model)
console.log(res.pixelRatio)
console.log(res.windowWidth)
console.log(res.windowHeight)
console.log(res.language)
console.log(res.version)
console.log(res.platform)
}
})
promise的用法
function getName() {
let p
p = new Promise(function (resolve, reject) {
setTimeout(function () {
console.log(111062);
resolve(‘jianyong’)
}, 2000)
})
console.log(p);
return p
}
getName().then(function (name) {
console.log(name)
})
定義函式的三種方式
test1();
function test1() { //函式宣告
alert(“1111”);
}
test2();
var test2 = function(){ //函式字面量
alert(“2222”);
}
test3();
var test3 = new Function(“alert(3333);”); //執行時,初始化函式體
身份介面
2店長
1店小二
wx:if=’{{item.is_del1&&(item1.shenfen1||item1.is_zujuzhe) &&(item1.start0 || item1.shenfen1 || item1.shenfen==2||is_zhuchiren)}}’
小程式元件傳參
https://blog.csdn.net/hope93/article/details/80803447
父向子傳參
父元件中
直接在屬性上 用駝峰命名法傳遞要傳的引數,
子元件中使用properties去接收
properties: {
paramAtoB:String
},
properties: { //接收父的引數
myvalue:{
type:“string”,
value:“預設值”,//這裡就結束到父 元件的值去wxml可以使用了(父傳子)
observer:(newValue,oldValue)=>{ //observer監聽 cliclkfn函式
console.log(newValue,oldValue) //輸出新值舊值
}
}
},
灰色標題
f_title
getunionid(getunionidparam).then(data => {
var res = data.response;
console.log(res,"【======getunionid=======】");
})
var base64 = require(’./base64’); js檔案引入js 檔案
app.globalData.hasToken ? d() : app.once(‘app:token:success’, d)
js 引入方法
import {
juben_search,
change_headframe
} from “…/…/…/…/utils/service”;
var interval = setInterval(function () {
if (wx.getStorageSync('city')) {
that.setData({
city: wx.getStorageSync('city')
});
//that.loadinfo();
clearInterval(interval);
} else {
// app.loadmyLocation();
}
}, 1000);
[app:wx:login:success]
// 迴圈檢查是否存在私有token, 如果存在則傳送請求
let interval_id;
let promise = new Promise((resolve, reject)=>{
interval_id = setInterval(()=>{
// 如果存在私有token 則請求最新的期刊
if(token_model.getPersonalToken()){
let promise = this.request({ url: ‘api/v1/mini/periodical/latest’ }).then(response => {
wx.setStorageSync(‘latest_classic’, response);
resolve(response);
});
}
}, 200);
});
// 清除定時
promise.then(()=>{
clearInterval(interval_id);
}).catch(()=>{
clearInterval(interval_id);
});
return promise;
lists[typeindex].lists = lists[typeindex].lists.concat(list);
“map不會改變原陣列說的是返回的新陣列,另外陣列是引用型別,你在迴圈裡面直接把原陣列改了,不變才怪。去看看map的用法吧。你這種寫法別說用map了,你直接arr[0]=‘a’,這樣原陣列更改變了。”
.left2 {
color: #787878;
font-size: 22rpx;
margin-top: 6rpx;
}
此處優惠券即使設定領取限制也可超庫存發放
.bottom{
font-size: 22rpx;
color: #787878;
margin-top: 6rpx;
padding-right: rpx;
}
抽獎助手
優惠券大禮包