成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

【輕松集贊】寫了個(gè)涉嫌混淆微信官方服務(wù)的小程序

xiao7cn / 1927人閱讀

摘要:吃飽喝足,兩個(gè)人扶著腰走在路上炫腹還是女盆友的提醒說,你不是會(huì)小程序嗎,能不能寫一個(gè)點(diǎn)贊的小程序來用。哎還真是,我自己擼一個(gè)也是闊以的,說不定還能給其他人用。比較適合想要練手小程序和的童鞋全部的代碼還請(qǐng)移步我的歡迎和。

發(fā)生背景:

????隨著現(xiàn)在國內(nèi)的社交軟件用戶群體的不斷擴(kuò)大,商家打廣告的方式(套路)也越來越多了,每次走在大街上都可以看到商家打出來廣告牌,"朋友圈點(diǎn)贊超過30享受六折優(yōu)惠"。在上一次和女盆友出去萬達(dá)吃個(gè)晚飯,終于我們也被這個(gè)活動(dòng)誘惑了一下下,作為口袋錢不多又想好好吃一頓的大三狗,看看望著桌子上一大盆烤魚,還在猶豫要不要點(diǎn)一份小龍蝦的女朋友,還是選擇了拍照發(fā)朋友圈然后挨個(gè)去群里叫親朋好友點(diǎn)贊,麻煩了一堆好友,真是不好意思。
????吃飽喝足,兩個(gè)人扶著腰走在路上炫"腹"、還是女盆友的提醒說,你不是會(huì)小程序嗎,能不能寫一個(gè)點(diǎn)贊的小程序來用。哎、還真是,我自己擼一個(gè)也是闊以的,說不定還能給其他人用。

程序分解 分析了一下小程序要的功能:
 1. 主要功能:點(diǎn)贊(想要多少贊就要多少贊)  
 2. 微信朋友圈部分功能    
項(xiàng)目結(jié)構(gòu)

感覺這個(gè)小程序比較適合想要練手小程序和WeUI的盆友,所以細(xì)講一點(diǎn)

├── assets 小程序所需的images icon                 
├── pages   頁面目錄          
|   ├── welcome 歡迎頁面      
|   ├── index   內(nèi)容發(fā)布操作頁面
|   ├── mian   "朋友圈" 
├── style   頁面的樣式 及weui
└── app.js  小程序邏輯 全局參數(shù)
└── app.wxss 小程序公共樣式
└── app.json   項(xiàng)目的配置

需要注意的地方:微信朋友圈發(fā)布一張圖片和多張圖片圖片寬高比例不一樣

歡迎頁面Welcome

歡迎頁的動(dòng)畫我很喜歡,在設(shè)計(jì)的時(shí)候也想了試了比較久,也許是這一個(gè)小程序的最養(yǎng)眼的地方

不好意思啦,就這張GIF顯示的效果比較讓人滿意,得麻煩您想象一下豎屏的畫面啦

這個(gè)氣泡動(dòng)畫都是由代碼 + svg圖生成 其實(shí)只要你想到就非常簡單

結(jié)構(gòu)部分:

// 我頁面上設(shè)置了10氣泡

  
  

部分樣式:

.animation{
  -webkit-animation: rotate 2s linear;
  animation: rotate 2s linear;
}
.biubiu{
  -webkit-transform:rotate(720deg) scale(2,2);
  transform:rotate(720deg) scale(0,0); 
  -webkit-transition:all 2s ease-in-out;
  transition:all 2s ease-in-out;
}

.bg-bubbles {
//整個(gè)背景占滿全屏
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.bg-bubbles li {
  position: absolute;
  bottom: -160rpx; // 讓氣泡從頁面底部冒出的效果
  width: 40rpx;
  height: 40rpx;
  /* background-color: rgba(255,255,255,0.15); */
  list-style: none;
  // 使用自定義動(dòng)畫使氣泡漸現(xiàn)、上升和翻滾
  animation: square 15s infinite;
  transition-timing-function: linear;
  overflow: hidden;
}
li image{
  width: 100%;
  height: 100%;
}
//給每個(gè)氣泡通過left 設(shè)置在不同的點(diǎn) 這里只展示一個(gè)節(jié)點(diǎn)操作
.bg-bubbles li:nth-child(2) {
  left: 20%;
  width: 90rpx;
  height: 90rpx;
//設(shè)置不同氣泡的動(dòng)畫執(zhí)行時(shí)間 和出現(xiàn)時(shí)間
  animation-delay: 2s;
  animation-duration: 7s;
  background-image: url("svgPath"); //保持圖像的縱橫比并將圖像縮放成將完全覆蓋背景定位區(qū)域
  // 讓每一個(gè)氣泡圖片完整展示
  background-size: cover;
}

// 兩個(gè)自定義動(dòng)畫實(shí)現(xiàn)頁面顯示動(dòng)畫效果
@keyframes square {
  0% {
    opacity: 0.5;
    transform: translateY(0rpx) rotate(45deg);
  }
  25% {
    opacity: 0.75;
    transform: translateY(-800rpx) rotate(90deg);
  }
  50% {
    opacity: 1;
    transform: translateY(-1200rpx) rotate(135deg);
  }
  100% {
    opacity: 0;
    transform: translateY(-1000rpx) rotate(180deg);
  }
}

@keyframes rotate{
    //就不貼那么多 占位置
}

再回過頭去看看,只要想清楚了實(shí)現(xiàn)起來并沒有那么復(fù)雜

welcome頁面的js文件中 頁面跳轉(zhuǎn)可以由點(diǎn)擊和自動(dòng)跳轉(zhuǎn),因?yàn)樽詣?dòng)跳轉(zhuǎn)設(shè)置在頁面onLoad事件的定時(shí)器中,所以在點(diǎn)擊跳轉(zhuǎn)之后,應(yīng)該將onLoad中的定時(shí)器進(jìn)行清除操作
內(nèi)容發(fā)布頁Index
發(fā)布頁就像正常發(fā)布朋友圈一樣,說說內(nèi)容、圖片、位置基本內(nèi)容不能少
因?yàn)槲覀兪屈c(diǎn)贊小程序,所以可以將點(diǎn)贊和評(píng)論操作放在本頁,當(dāng)然在朋友圈頁面也有提供點(diǎn)贊的按鈕

頁面布局效果和操作:

這個(gè)頁面大部分使用了WeUI的組件編寫主要用到的組件有:

主要是表單組件,實(shí)際上我們這個(gè)頁面大部分在做表單處理:
weui-cells 表單
uploader 圖片上傳
`slider` 滑動(dòng)按鈕  

picker 從底部彈起的滾動(dòng)選擇器 支持多種選擇器,通過mode分別
button 按鈕

整個(gè)頁面可以理解為:將一切你想要在"朋友圈"展示的內(nèi)容設(shè)置好 ->通過 wx.setStorageSync()寫入緩存里進(jìn)行數(shù)據(jù)傳遞到即將展示的內(nèi)容頁面
值得一說:
長按圖片刪除

  deleteTap(e) {
    var imgList = this.data.images;
    const index = e.currentTarget.dataset.item;
    // 通過spilce()對(duì)數(shù)組中的元素刪除 通過MVVM模式 再setData 對(duì)圖片實(shí)現(xiàn)長按刪除
    imgList.splice(index, 1); 
    wx.showModal({
      title: "溫馨提示",
      content: "確定要?jiǎng)h除嗎",
      showCancel: false,
      confirmText: "確定",
      success:(response)=>{
        this.setData({
          images:imgList
        });
      }
    });
  }
朋友圈 Main

使用了一下朋友的手機(jī)錄了個(gè)屏(不小心暴露了老哥的珍藏表情包) 因?yàn)樗年欠Q是透明的,所以在頁面上昵稱那一塊是空缺的



在內(nèi)容頁面中,值得注意的就是微信朋友圈的圖片的顯示,單張圖和多張圖圖片的顯示寬高比不一樣,從效果圖中可以看出,在實(shí)際實(shí)現(xiàn)中可以通過判斷要展示的圖片數(shù)組的長度進(jìn)行三元運(yùn)算判斷選擇使用哪一種展示樣式

content_info.images.length >1?"image_item":"image_item3_4"

實(shí)現(xiàn):

// 使用了九宮格布局
 
      
        
          
       
     
  

微信的WeUI框架中包含了常用的九宮格布局 通過weui-grids 類名使用,我也是再自己手寫完九宮格的樣式以后才無意中在文檔里瞥到了,這一瞥差點(diǎn)吐血(又白折騰一陣),還是給大家貼上原來的九宮格布局代碼:

        .grid {
            padding: 40rpx 0;
            margin-left: auto;
            margin-right: auto;
            max-width: 660rpx;
            overflow: hidden;
            box-sizing: border-box;
        }

        /* 自建九宮格最方便的寫法 width: 33.33333%; */

        .grid .item {
            float: left;
            box-sizing: border-box;
            width: 33.33333%;
            padding-left: 4%;
            padding-right: 4%;
            margin-bottom: 40rpx;
            overflow: hidden;
        }

點(diǎn)贊按鈕:

點(diǎn)贊的人名都是我所能想到的人名以及角色名,可把邊上的人都寫了一遍

點(diǎn)贊的操作因?yàn)槌绦蚬δ艿男枰龀闪它c(diǎn)一下加一個(gè)點(diǎn)贊人數(shù)  
因?yàn)樵趏nload中已經(jīng)通過發(fā)布頁面(index)的slider確定了點(diǎn)贊的人數(shù),
//點(diǎn)贊按鈕點(diǎn)擊一下增加一個(gè)人即一個(gè)昵稱
 addThumb(){
    let thumbs = this.data.content_info.thumbs;
    thumbs = thumbs +1;
    this.data.content_info.thumbs = thumbs;
    let nickNames = app.globalData.nickNames;
    const temp = [];
    for (let i = 0; i < thumbs-1; i++) {
      temp.push(nickNames[i]);
    }
    //為了解決昵稱最后一個(gè)逗號(hào)問題,直接粗暴的在最后添加一項(xiàng)
    temp.push("佚名");
    this.setData({
      nickNames: temp
    })
  }

使用到的API:

//圖片預(yù)覽
wx.previewImage({
      current: `${path}`,//當(dāng)前顯示的圖片路徑
      urls: [...urls]//要預(yù)覽的所有圖片
    })

隨手的一個(gè)小程序,但是功能還是可以的,符合小程序用完即走的原則,上線是不可能的,界面和功能混淆了微信的官方服務(wù)功能,不過我留了一個(gè)體驗(yàn)版在手機(jī)里,美滋滋。比較適合想要練手小程序和 weui 的童鞋
全部的代碼還請(qǐng)移步我的github,歡迎starfork。最后朋友圈頁面的評(píng)論按鈕功能后面會(huì)繼續(xù)實(shí)現(xiàn),想要實(shí)現(xiàn)的朋友可以參考我的思路:

頁面上設(shè)置input onfocus 默認(rèn)隱藏,自動(dòng)獲取焦點(diǎn)->點(diǎn)擊評(píng)論按鈕再顯示  
獲取iput的value 通過數(shù)據(jù)綁定的效果 綁定到評(píng)論數(shù)據(jù)中,頁面刷新
寫在后面

在使用你不知道或不熟悉的API或組件之前先看看文檔,事半功倍

小程序在模擬器上實(shí)現(xiàn)一些復(fù)雜功能和界面效果時(shí),及時(shí)在移動(dòng)設(shè)備上進(jìn)行效果查看, 避免移動(dòng)端上達(dá)不到預(yù)期效果,iosandroid有時(shí)候在樣式的顯示上有時(shí)也會(huì)有不同

前端路漫漫,與君共勉之。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/113480.html

相關(guān)文章

  • 美團(tuán)小程序框架mpvue蹲坑指南

    摘要:這個(gè)是我們約定的額外的配置這個(gè)字段下的數(shù)據(jù)會(huì)被填充到頂部欄的統(tǒng)一配置美團(tuán)汽車票同時(shí),這個(gè)時(shí)候,我們會(huì)根據(jù)的頁面數(shù)據(jù),自動(dòng)填充到中的字段。 美團(tuán)小程序框架mpvue(花名:沒朋友)蹲坑指南 第一次接觸小程序大概是17年初,當(dāng)時(shí)小程序剛剛內(nèi)側(cè),當(dāng)時(shí)就被各種限制折騰的死去活來的,單向綁定,沒有promise,請(qǐng)求數(shù)限制,包大小限制,各種反人類,...反正我是感受到了滿滿的惡意.最近接到一個(gè)工...

    AprilJ 評(píng)論0 收藏0
  • 花半天時(shí)間了個(gè)估計(jì)不會(huì)有人用的小程序,竟然還審核通過了

    摘要:這個(gè)想法來自看直播時(shí)看主播斗地主時(shí)經(jīng)常由于沒有記牌器,判斷失誤導(dǎo)致輸豆,所以做了這個(gè)記牌器。 這個(gè)想法來自看直播時(shí)看主播斗地主時(shí)經(jīng)常由于沒有記牌器,判斷失誤導(dǎo)致輸豆,所以做了這個(gè)記牌器。估計(jì)不會(huì)有人用

    freewolf 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<