国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微信小程序?qū)崿F(xiàn)吸頂、網(wǎng)格、瀑布流布局

這篇具有很好參考價值的文章主要介紹了微信小程序?qū)崿F(xiàn)吸頂、網(wǎng)格、瀑布流布局。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

微信小程序開發(fā)通常是在webview模式下編寫,但是對小程序的渲染性能有一定的追求,就需要使用Skyline模式進行渲染,同時在這種模式下有也有一些特殊的組件,可以輕松的實現(xiàn)想要的效果,本文將介紹在Skyline模式下如何實現(xiàn)吸頂、網(wǎng)格、瀑布流布局。

微信小程序skyline實現(xiàn)瀑布流,Mini Program,前端開發(fā),微信小程序

以下是具體的實現(xiàn):

1. 修改渲染模式

1.?在app.json中添加如下配置:

"renderer": "skyline",  // 聲明渲染模式
"lazyCodeLoading": "requiredComponents", // 聲明依賴注入
"rendererOptions": {   
    "skyline": {
        "defaultDisplayBlock": true, // 默認(rèn)為塊布局
        "defaultContentBox": true,   // 默認(rèn)開啟盒模型
        "disableABTest": true        // 禁用AB測試
    }
},
"componentFramework": "glass-easel" // 使用的組件框架

2.?由于在Skyline模式下,不支持頁面全局滾動,也不支持原生導(dǎo)航欄,所以在頁面的json配置文件中還要添加如下配置:

{
  "usingComponents": {},
  "disableScroll": true,
  "navigationStyle": "custom"
}

2.?主要組件介紹

1.?sticky-section?吸頂布局容器;

僅支持作為 <scroll-view type="custom"> 模式的直接子節(jié)點。

2.?sticky-header?吸頂布局容器;

僅支持作為?<scroll-view type="custom"> 模式的直接子節(jié)點或 sticky-section 組件直接子節(jié)點。

3.?grid-view?網(wǎng)格布局容器,可實現(xiàn)網(wǎng)格布局、瀑布流布局等;

僅支持作為?<scroll-view type="custom">?模式的直接子節(jié)點。按需渲染節(jié)點,比 Webview 兼容實現(xiàn)具備更好的性能。

3.?所有代碼實現(xiàn)

1.?以下是WXML文件代碼

<!-- index.wxml -->
<scroll-view type="custom" scroll-y show-scrollbar="{{false}}" scroll-into-view="{{intoView}}" class="scroll-view" bindscrolltolower="bindSrollToLower" style="margin-top: {{menuTop}}px;">

    <sticky-section push-pinned-header="{{false}}">
        <sticky-header>
            <view class="sticky-header">
                <view class="search" style="height: {{menuHeight}}px;line-height: {{menuHeight}}px; margin-right: {{menuLeft}}px;">
                    <input placeholder="找找去哪兒玩~" />
                </view>
            </view>
        </sticky-header>
        <grid-view type="aligned" cross-axis-count="5">
            <view wx:for="{{topList}}" class="top-list">
                <image src="https://res.wx.qq.com/op_res/omjFJjgEk_ZZIDmlSIE1hpn57hHOlcHvbMy1jM-BwNFczaS8S_rFryt8b3c7VC4h0BUjX4bSyjoDNaPteTlYcw" mode="aspectFill"></image>
                <text>廣州</text>
            </view>
        </grid-view>
    </sticky-section>

    <sticky-section push-pinned-header="{{false}}">
    
        <sticky-header>
            <view class="sticky-header">
                <view class="sticky-header-child">
                    <view class="mini-head current">自然風(fēng)景</view>
                    <view class="mini-head">周邊旅游</view>
                    <view class="mini-head">溫泉</view>
                    <view class="mini-head">玩雪</view>
                    <view class="mini-head">海邊</view>
                </view>
            </view>
        </sticky-header>

        <grid-view type="masonry" 
            cross-axis-count="{{crossAxisCount}}" 
            cross-axis-gap="{{crossAxisGap}}" 
            main-axis-gap="{{mainAxisGap}}">
            <view wx:for="{{bottomList}}" class="grid-box">

                <image src="{{item.image_url}}" mode="widthFix"></image>

                <view class="content-box">
                    <text>這里的風(fēng)景好美~</text>

                    <view class="profile-text">
                        <view class="left">
                            <image  src="https://res.wx.qq.com/op_res/lS41C5Xp6y6mfUbelCW8PArEcMwWRuhSohPO46vAiELbhAf56_CwONEDgM2vIVxOlT5KDcSxCkV8xIJ6cg3x2Q"></image>
                            <text>binnie</text>
                        </view>
                        <view class="right">
                            <image  src="https://res.wx.qq.com/community/dist/community/images/disagree_icon_fab2b7.svg"></image>
                            <text>666</text>
                        </view>
                    </view>
                </view>
            </view>
        </grid-view>

    </sticky-section>

</scroll-view>

2.?以下是WXSS文件代碼:

/* index.wxss */
.scroll-view {
    width: 100%;
    height: 100%;
}
 
.search {
    border: rgb(228, 226, 226) solid 1px;
    border-radius: 20px;
    margin: 0 10px;
    line-height: 30px;
    height: 30px;
}
 
.search input {
    padding: 0 10px;
    line-height: 30px;
    height: 30px;
}
 
 
.top-list {
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    padding-top: 10px;
    flex-direction: column;
}
 
 
.top-list image {
    width: 15vw;
    height: 15vw;
    border-radius: 50%;
}
 
.top-list text {
    padding: 10px 0;
    font-size: 14px;
}
 
 
 
.sticky-header {
    background-color: #fff;
}
 
 
.sticky-header-child {
    display: flex;
    flex-direction: row;
}
 
 
.mini-head {
    display: flex;
    background-color: #f5f5f5;
    margin: 8px 6px;
    padding: 6px 8px;
    border-radius: 4px;
    font-size: 14px;
}
 
.current {
    background-color: #07c160;
    color: #fff;
}
 
.grid-box {
    padding: 10px;
    border-radius: 8px;
    background-color: #f5f5f5;
}
 
.grid-box image {
    width: 100%;
}
 
.content-box {
    padding-top: 10px;
}
 
.profile-text {
    display: flex;
    flex-direction: row;
    padding-top: 4px;
    align-items: center;
}
 
.profile-text view {
    display: flex;
    color: #888;
    font-size: 14px;
    flex-direction: row;
    align-items: center;
}
 
.profile-text .left {
    width: 70%;
}
 
.left image {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin-right: 4px;
}
 
 
.profile-text .right {
    text-align: right;
    color: #888;
    font-size: 14px;
}
 
.right image {
    width: 16px;
    height: 16px;
    background-size: cover;
    opacity: .5;
    color: rgba(0, 0, 0, .5);
    margin: 0 3px;
}

3.?以下是JavaScript文件代碼:

// index.js

import { getLandscapeImages} from './data'

function getNewList() {
    const newList = new Array(20).fill(0);
    const imgUrlList = getLandscapeImages();
    let count = 0;
    for (let i = 0; i < newList.length; i++) {
        newList[i] = {
            id: i+1,
            title: `scroll-view`,
            desc: `默認(rèn)只會渲染在屏節(jié)點,會根據(jù)直接子節(jié)點是否在屏來按需渲染`,
            time: `19:20`,
            like: 88,
            image_url: imgUrlList[(count++) % imgUrlList.length],
        }
    };
    return newList;
}

Page({

    data: {

        // 頂部列表數(shù)據(jù)
        topList: new Array(15).fill(0),
        // 底部列表數(shù)據(jù)
        bottomList: getNewList(),

        // 網(wǎng)絡(luò)布局參數(shù)
        crossAxisCount: 2,
        crossAxisGap: 8,
        mainAxisGap: 8,

        // 頂部布局參數(shù)
        menuTop: 0,
        menuHeight:0,
        menuLeft:0
    
    },
    onLoad() {
        const res = wx.getMenuButtonBoundingClientRect();
        this.setData({
            menuTop: res.top,
            menuHeight: res.height,
            menuLeft: res.width + 10
        })
    },
    bindSrollToLower() {
        this.setData({
            bottomList: this.data.bottomList.concat(getNewList())
        })
    },


})

4.?以下是上面JavaScript代碼中引入的本地模擬數(shù)據(jù)文件data.js代碼:

// data.js

const landscapeList = [
    'https://res.wx.qq.com/op_res/7_miJnK0wxIrh5bV2QqvYfaqohk6ndcC6_CBkUZszfSpKbqUAV7S2xWRbAQ459YsPWAmLKkicEOPS1L3NmnnRA',
    'https://res.wx.qq.com/op_res/7_miJnK0wxIrh5bV2QqvYYjda9Dp372N3T05q_nn3PgvoXBoReXvaXBfkthtXQLN7m5_YI6FoTre-xvJBDFLMA',
    'https://res.wx.qq.com/op_res/7_miJnK0wxIrh5bV2QqvYfa6mRnywhNbBFV5eAt7oTz3zjlNJeujfQx0PVA1ufenPHBvxYXRNJ5chyi6RPaE7A',
    'https://res.wx.qq.com/op_res/7_miJnK0wxIrh5bV2QqvYYY1OalScOn4EMcQpkPaJ1Sxhri8CScjnhqVfjAZnLuVFl0JAM4VziHhSzHLZXtAaQ',
    'https://res.wx.qq.com/op_res/7_miJnK0wxIrh5bV2QqvYZB1p48LLH-Pc7Rzr4nN0YF-uZg7FW7zksw_Kjp0BNDHcZp9R9SRKbg0rA1HBaeK3Q',
    'https://res.wx.qq.com/op_res/0-l2fyKjv3_BR62E3KwTJPRaN5CDI6NZFg_qbSxeqF8UBpM4lXJ_1o9S9bsOOxMpuXGLeKyAKleWlAXmVLmQOw',
    'https://res.wx.qq.com/op_res/7_miJnK0wxIrh5bV2QqvYRu0VRyVvePJ4pB4_Dvj0ytF-ovjQzMl6WMLyuCeKk3579HNjKLIeNrHE7OprTBx5w'
]
  
export function getLandscapeImages() {
  return landscapeList
}

5.?以下是頁面配置文件代碼:文章來源地址http://www.zghlxwxcb.cn/news/detail-835412.html

{
    "usingComponents": {},
    "disableScroll": true,
    "navigationStyle": "custom"
}

到了這里,關(guān)于微信小程序?qū)崿F(xiàn)吸頂、網(wǎng)格、瀑布流布局的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 微信小程序搜索框吸頂效果實現(xiàn)

    微信小程序搜索框吸頂效果實現(xiàn)

    主頁要做一個搜索框,滑動主頁頁面的時候,搜索框始終位于導(dǎo)航欄下面,位置不變,不隨頁面的滑動而滑動,這種效果被稱為”吸頂“效果。 點擊搜索框,彈出上層搜索詳情的視圖層,搜索詳情的整個頁面覆蓋在主頁面之上,并且也覆蓋住主要搜索框。 主頁搜搜框設(shè)置

    2024年02月13日
    瀏覽(56)
  • 微信小程序第六篇:元素吸頂效果實現(xiàn)

    微信小程序第六篇:元素吸頂效果實現(xiàn)

    ?系列文章傳送門: 微信小程序第一篇:自定義組件詳解 微信小程序第二篇:七種主流通信方法詳解 微信小程序第三篇:獲取頁面節(jié)點信息 微信小程序第四篇:生成圖片并保存到手機相冊 微信小程序第五篇:頁面彈出效果及共享元素動畫 話不多說,先看效果: 這種效果在

    2024年02月16日
    瀏覽(25)
  • 微信小程序 - - - - - 瀑布流效果實現(xiàn)

    對于一些小程序,關(guān)于瀑布流的需求是很正常的,瀑布流看起來確實很舒服,但是具體該如何實現(xiàn)呢? 下文給出的方式是: js + css 瀑布流,又稱 瀑布流式布局 。 是比較流行的一種網(wǎng)站頁面布局, 視覺表現(xiàn)為 參差不齊的多欄布局 ,隨著頁面滾動條向下滾動,這種布局還會

    2024年02月17日
    瀏覽(18)
  • css+js瀑布流布局實現(xiàn)

    記錄一個瀑布流布局問題的解決過程 最開始使用js實現(xiàn),將 子元素進行絕對定位,根據(jù)寬高及順序判斷定位的top與left 。 問題 :存在新增子元素頁面加載不及時的問題,會出現(xiàn)子元素初始狀態(tài)疊加在一起,計算完成后才能正常顯示。 點擊查看代碼 再次嘗試使用css中的colum

    2024年02月04日
    瀏覽(20)
  • 瀑布流布局(CSS flex實現(xiàn))

    關(guān)鍵點 使用了 vw 進行自適應(yīng)縮放 html:

    2024年02月07日
    瀏覽(29)
  • 實現(xiàn)瀑布流布局的四種方法

    實現(xiàn)瀑布流布局的四種方法

    頁面上是一種 參差不齊 的多欄布局,類似上圖所示隨著頁面滾動條向下滾動,這種布局還會不斷加載數(shù)據(jù)塊并附加至當(dāng)前尾部,大部分為圖片,圖片 固定 寬度,高度 不一 ,根據(jù)原比例縮放到寬度達(dá)到固定的要求,每行排滿后,新的圖片添加到后面 固定寬度,高度不一 岑

    2023年04月15日
    瀏覽(23)
  • vue3實現(xiàn)瀑布流布局組件

    vue3實現(xiàn)瀑布流布局組件

    先看效果圖 直接上代碼 utils.js data.js 模擬后臺返回的數(shù)據(jù) 瀑布流布局組件 waterfall.vue 使用該組件(這里 columns 寫死了3列) 若要響應(yīng)式調(diào)整列數(shù),可參考以下代碼 瀑布流布局組件監(jiān)聽 columns 變化

    2024年02月21日
    瀏覽(29)
  • 微信小程序 頂部搜索 吸頂 不隨頁面滾動而滾動

    微信小程序 頂部搜索 吸頂 不隨頁面滾動而滾動

    主要用于商城類小程序: 微信小程序 搜索框 頂部吸頂 頂部購物車欄固定 不隨頁面滾動而滾動 示例: 可以看到分為三部分--頭部搜索框--中間商品區(qū)域(可滾動)----底部購物車(固定底部) 頭部搜索框 最大的盒子寬高100% 頭部盒子需要有固定高度 flex布局 flex-flow: column; (為了中間

    2024年02月12日
    瀏覽(21)
  • 微信小程序--瀑布流

    微信小程序--瀑布流

    本文使用了微信小程序第三方組件庫 Lin UI 。 Lin UI 是基于 微信小程序原生語法 實現(xiàn)的組件庫。遵循簡潔,易用的設(shè)計規(guī)范。 Lin UI 中封裝了瀑布流的組件,使用方法也比較簡單,但是寫法讓我不是很理解,因此決定下載源碼研究。 以下將從 如何使用 , 源碼研究 , 源碼改

    2024年02月09日
    瀏覽(19)
  • 微信小程序瀑布流組件

    微信小程序瀑布流組件

    1.創(chuàng)建文件夾? ? /components/waterfall/ ?文件夾結(jié)構(gòu)如圖 各文件內(nèi)容: 我這里直接就是寫死了兩列排列 然后在用到該組件的頁面文件夾下? .json 文件夾中引入 注意:文件路徑不要寫錯了?。。∵@里只是一個參考 ?然后使用該組件? 對其dataArr【 注意:我這里定義的是dataArr!!! 】

    2024年02月16日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包