小程序仿微信發現頁 03《 程序員變現指南之 微信QQ 小程序 真的零基礎開發寶典》

本系列教程是針對粉絲的變現教程,還不是粉絲的可以關注我并且到社區:https://bbs.csdn.net/topics/603436232

進行打卡,不是老粉的也可以獲取最終的技術變現學習,最終還有詳細的變現教程等你來。

前言

《 程序員變現指南之 微信&QQ 小程序 真的零基礎開發寶典》
本系列文章參考《微信小程序開發實戰》并對新手做出補充說明
教程出完后將會有變現直播,請關注CSDN社區活動公告:https://bbs.csdn.net/forums/A757291228?spm=1001.2014.3001.6682&typeId=19380。

在社區中發文每周將會在活躍前十送出:

  • 一本實物書籍
  • 多份實物小禮品
  • 每月送出機械鍵盤等獎勵

教程所需

由于小程序開發需要一定的基礎,這些基礎需要提前掌握,本教程只對小程序開發進行零基礎說明。

  • 微信小程序開發工具,下載鏈接:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html

  • JavaScript基礎

  • HTML基礎

目錄 持續更新:

小程序的 HelloWord 01《 程序員變現指南之 微信&QQ 小程序 真的零基礎開發寶典》
小程序獲取頭像試試水 02《 程序員變現指南之 微信&QQ 小程序 真的零基礎開發寶典》
小程序仿微信發現頁 03《 程序員變現指南之 微信&QQ 小程序 真的零基礎開發寶典》

一、flex布局

上一節簡單的了解了一下 flex,本節將對 flex 進行加深,制作一個微信的發現頁。

首先跟第二節所操作的一樣,刪除所有不必要的代碼,接著到 app.json 中更改配置文件:

"window": {"navigationBarBackgroundColor": "#000000","navigationBarTitleText": "發現"},

navigationBarBackgroundColor 更改導航欄的背景色為黑色;
navigationBarTitleText 更改導航標題為 “發現”。


此時頁面效果為如下:
在這里插入圖片描述
接著由于我們要做的微信發現頁是垂直向下所以在此處需要在 index.wxml 中添加一個 view:
在這里插入圖片描述
接著在編寫一個樣式使這個 view 的布局為垂直布局:

.container{height: 100vh;background-color: silver;display: flex;flex-direction: column;
}

在這里插入圖片描述
在該樣式中 height: 100vh; 表示高度為100視窗,也就是占滿整個屏幕;background-color: silver; 表示這個 view 背景色為黑色;display: flex; 表示為 flex 布局;flex-direction: column; 表示為垂直布局。畢竟我們的發現窗的內容是從上往下布局的。

接著給這個 view 綁定一個樣式:
在這里插入圖片描述
接下來開始編寫這個 view 中的內容:
在這里插入圖片描述
以上是我們需要在視窗中添加的內容。我們可以看到整個視窗為橫向布局,此時可以想到使用 flex 讓他的 flex-direction 為橫向即可。由于整個發現頁不止朋友圈一個欄目,那么需要將整個朋友圈欄目視為一個整體,意思則是朋友圈需要編寫在同一個 view 之中,并且這個view 之外還存在包裹這個朋友圈欄目的 view。整體結構如下:
在這里插入圖片描述
接下來先給包裹朋友圈的 view 一個樣式:

.listGroup{background-color: white;margin: 20rpx 0;
}

該樣式表示給這個朋友圈添加一個背景色,并且給予一個 margin 上下外邊距 20rpx距離,左右距離為0,這樣將會使整個欄目的所有內容會有一個上下的距離。

接著給這個朋友圈欄目一個 flex 的橫向布局:

.listItem{display: flex;flex-direction: row;border: 1rpx solid silver;padding: 10rpx;
}

flex-direction: row; 表示橫向 flex 布局;border: 1rpx solid silver; 表示在四軸有一個單位為 1rpx 的邊框;padding: 10rpx; 表示內邊距為 10rpx。

接著點擊文件夾新建按鈕在頁面中新建一個文件夾:
在這里插入圖片描述
命名為image:
在這里插入圖片描述
接著在這個文件夾中放入我們需要的素材:
在這里插入圖片描述
在這里插入圖片描述

隨后我們在 index.wxml 中給 image 標簽添加圖片來源:
在這里插入圖片描述
隨后頁面演示效果如下:

<view class="container"><view class="listGroup"><view class="listItem"><image src="/pages/image/moments.png"></image><text>朋友圈</text><image src="/pages/image/arrow.png"></image></view></view>  
</view>

在這里插入圖片描述
這個時候發現圖片過大,我們在樣式文件 index.wxss 對 image 添加樣式,限制image 大小:

image{width: 80rpx;height: 80rpx;margin: 0 15rpx;
}

限定完畢后顯示效果如下:

在這里插入圖片描述

這時發現朋友圈字體不對齊,此時在 listItem 中添加一個居中對齊即可:

.listItem{display: flex;flex-direction: row;align-items: center;border: 1rpx solid silver;padding: 10rpx;
}

在這里插入圖片描述

二、循環創建欄目

接下來我們在 index.js 中創建數據,使前端欄目可以動態創建。
此時點擊 index.js 在 Page 中編寫數據:

在這里插入圖片描述
接著我們在 index.wxml 中使用 for 循環遍歷添加的數據:

<view class="container"><view class="listGroup" wx:for="{{list}}" wx:for-item='value' wx:key="value{{index}}"><view class="listItem"><image src="/pages/image/moments.png"></image><text>朋友圈</text><image src="/pages/image/arrow.png"></image></view></view>  
</view>

在這里插入圖片描述

在代碼 wx:for="{{list}}" wx:for 表示循環,其實 {{list}} 表示取到 list 的值,在wx:for-item='value'wx:for-item 可以理解為為這些所遍歷到的值起一個別名,這個別名我起名為 value;在代碼 wx:key="value{{index}}" 中 wx:key 表示當前的 key 值,添加了 value 防止重復,{{index}} 則表示當前的索引值,此時這樣編寫后發現當前頁面如下預覽:

在這里插入圖片描述
接著由于在我們所編寫的數據中,所遍歷到的只是一組一組數據,這一組數據中可能有些包含大于1個數據的值,所以在欄目的 view 中,我們需要再加一個循環:
在這里插入圖片描述

代碼如下:
在這里插入圖片描述
我們發現在里面的內容循環中,循環的值是第一個循環的內容,此時就可以為循環遍歷到的數組再多次進行循環。

最后為這些元素添加上值即可:

<view class="container"><view class="listGroup" wx:for="{{list}}" wx:for-item='value' wx:key="value{{index}}"><view class="listItem" wx:for="{{value}}" wx:for-item='value1' wx:key="value1{{index}}"><image src="{{value1.icon}}"></image><text>{{value1.text}}</text><image src="/pages/image/arrow.png"></image></view></view>  
</view>

最終效果如下:
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286711.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286711.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286711.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Silverlight與WCF之間的通信(4)silverlight以net.tcp方式調用console上寄宿的wcf服務

&#xff08;由于最近是針對一個demo進行的研究&#xff0c;在之前公開過代碼結構&#xff0c;這里只是對需要改動的地方加以說明&#xff09; WCF4.0使得編寫wcf服務不再那么復雜&#xff0c;去掉了許多的配置信息&#xff0c;客戶端只需要一個服務地址&#xff0c;便可在系統…

【空間數據庫】空間數據庫引擎(Spatial DataBase Engine)ArcSDE詳解

一、空間數據庫引擎概述 空間數據庫引擎的概念最早由ESRI提出。ESRI對SDE的定義是:從空間數據管理的角度看,SDE是一個連續的空間數據模型,借助這一模型,我們可以將空間數據加人到關系數據庫系統( RDBMS)中去。 SDE可以理解為基于特定的空間數據模型,在特定的數據存儲、數…

Git之提示There is no tracking information for the current branch.

1 問題 我項目比如是0.2分支&#xff0c;我需要修改項目的git地址&#xff0c;然后再pull新的代碼 1&#xff09;修改github地址&#xff08;讀者可以忽略&#xff09; 1.git remote 查看所有遠程倉庫 2.git remote rm origin 刪除之前的版本庫 3.git remote add origin htt…

Maui學習之路(一)--Windows窗體設置

Maui的學習之路作為 Maui的先行者&#xff0c;我有話要說&#xff0c;微軟你為了讓我成為牛 B 的程序員真的是煞費苦心&#xff0c;你一定是覺得我不夠牛逼所以針對我&#xff0c;存心想氣死我。好了廢話不多說&#xff0c;Maui現在也算是正式發布了&#xff0c;我有點想用它來…

Git 常用命令大全

Git 是一個很強大的分布式版本控制系統。它不但適用于管理大型開源軟件的源代碼&#xff0c;管理私人的文檔和源代碼也有很多優勢。 Git常用操作命令&#xff1a; 1) 遠程倉庫相關命令 檢出倉庫&#xff1a;$ git clone git://github.com/jquery/jquery.git 查看遠程倉庫&#…

為什么本地使用js或jquery操作cookie在谷歌瀏覽器chrome中不生效?

2019獨角獸企業重金招聘Python工程師標準>>> 為什么本地使用js或jquery操作cookie在谷歌瀏覽器chrome中不生效&#xff1f;新手學習js或jquery時&#xff0c;一般是在本地調試&#xff08;前端學習一般用不到服務器端&#xff09;&#xff0c;當學習到cookie一節時&…

全解小程序猜數字游戲 04《 程序員變現指南之 微信QQ 小程序 真的零基礎開發寶典》

本系列教程是針對粉絲的變現教程&#xff0c;還不是粉絲的可以關注我并且到社區&#xff1a;https://bbs.csdn.net/topics/603436232 進行打卡&#xff0c;不是老粉的也可以獲取最終的技術變現學習&#xff0c;最終還有詳細的變現教程等你來。 社區有獎勵 下面有投票 本文也…

Android之解決主頁面Activity監聽fragment退出問題(由NavHostFragment和RxFragment一起管理fragment)

1、 問題 app里面目前主頁面是一個activity,然后部分fragment是由NavHostFragment管理,當splash、login等頁面也放在navigation時,按手機的返回鍵這些頁面只能一頁頁回退,因為設置了 app:defaultNavHost="true" 并不能在某個頁面例如splash、login按返回鍵時退…

linux之ps命令詳解

linux中ps(process status) 命令是LINUX下最常用的也是非常強大的進程查看命令&#xff0c;運用該命令可以確定有哪些進程正在運行和運行地狀態、進程是否結束、進程有沒有僵死、哪些進程占用了過多地資源等等。 ps命令最常用的是用于監控后臺進程的工作情況。 Linux 查看進程p…

【空間數據庫】傳統數據模型(層次、網狀、關系)和空間數據模型詳解

數據模型是指數據庫的組織形式,它決定了數據庫中數據之間聯系的表達方式,即把在計算機中表示客觀事物及其聯系的數據及結構稱為數據模型。本文詳細講述傳統三大數據模型和空間數據模型。 一、數據模型概述 數據模型是指數據庫的組織形式,它決定了數據庫中數據之間聯系的表…

聊聊 C# 中的多態底層 (虛方法調用) 是怎么玩的

最近在看 C 的虛方法調用實現原理&#xff0c;大概就是說在 class 的首位置存放著一個指向 vtable array 指針數組 的指針&#xff0c;而 vtable array 中的每一個指針元素指向的就是各自的 虛方法&#xff0c;實現方式很有意思&#xff0c;哈哈&#xff0c;現在我很好奇 C# 中…

sublime text 3 安裝、添加命令行啟動、漢化、注冊碼

1. 安裝sublime&#xff1a; 下載&#xff1a;http://www.sublimetext.com/3 添加命令行啟動&#xff1a;設置環境變量->計算機->右鍵屬性->高級系統設置->環境變量->系統變量->Path->編輯&#xff0c;加入";安裝路徑"(如&#xff1a;;D:\Progr…

MVC基礎知識-View

public ActionResult Index() {ViewBag.Message "Modify this template to jump-start your ASP.NET MVC application.";//展現到視圖中數據//~/Views/Home/Index.cshtmlreturn View(); //展現指定的視圖&#xff0c;當沒有指定視圖名稱時&#xff0c;默認是指向根目…

Android之設置當前app為默認瀏覽器研究

1 需求 把當前app設置為默認瀏覽器 2 主要思路 分析競品,我們主要通過2種方式設置app為默認瀏覽器 直接跳 手機“設置默認應用”界面來讓用戶選擇 默認瀏覽器為哪個app打開一個鏈接,拉起手機所有瀏覽器,讓用戶去選擇哪個瀏覽器,并且只有點擊“始終”才會生效,僅僅點擊“…

Linux下的用戶和組

2019獨角獸企業重金招聘Python工程師標準>>> 用戶和組 GNU/Linux 通過用戶和用戶組實現訪問控制 —— 包括對文件訪問、設備使用的控制。Linux 默認的訪問控制機制相對簡單直接&#xff0c;不過還有一些更加高級的機制&#xff0c;包括 ACL 和 LDAP Authentication.…

漫畫C語言 做個聊天軟件你不懂也得懂

學完C語言做不出東西&#xff1f;不存在的&#xff0c;咱們做一個最“隱私”的聊天器&#xff0c;就倆人&#xff0c;你和我。咱們聊天的信息你知我知沒別人知。 對了&#xff0c;本文評論區點贊、收藏抽獎。 社區也有抽獎&#xff0c;本周社區抽獎帖子 &#xff1a;https://b…

【Microstation】第一章:Microstation三維模型構建概述

MicroStation 是國際上和AutoCAD齊名的二維和三維CAD設計軟件&#xff0c;第一個版本由Bentley兄弟在1986年開發完成。其專用格式是DGN&#xff0c;并兼容AutoCAD的DWG/DXF等格式。 MicroStation是Bentley 工程軟件系統有限公司在建筑、土木工程、交通運輸、加工工廠、離散制造…

libgdx游戲引擎開發筆記(十)SuperJumper游戲例子的講解(篇四)---- 主游戲界面內部框架編寫...

上一講&#xff0c;我們已經實現了點擊play進入游戲界面但僅僅是個黑屏 今天&#xff0c;我們就試著編寫代碼讓它出現游戲的一些簡單場景。還是在上一講的代碼基礎上&#xff0c;我們創建兩個類&#xff1a;World 和 WorldRenderer 1.Word類&#xff1a; 12345678910111213141…

看看《System.CommandLine》

記得之前出過幾篇.net tool工具的文章&#xff0c;當時的做法是所有工具的語法分析全部自己解釋&#xff0c;自己執行&#xff0c;語法的解釋占了大部分時間&#xff0c;反而工具的功能被弱化了。其實微軟有一個CommandLine框架在緩慢的發展著&#xff0c;至今都沒有正式發布&a…

Sublime Text 3 import Anaconda 無法正常補全模塊名解決辦法

Sublime Text 3 Anaconda配置 在安裝Sublime Text3之后我們總會安裝一些插件&#xff0c;比如Python的Anaconda自動補全插件。但是&#xff0c;裝好之后發現import 時無法像別的IDE里面那樣自動補全模塊名&#xff0c;就像圖中一樣&#xff1a; 解決辦法在Sublime Text的git…