微信小程序-1-微信開發者工具環境搭建和初始化創建項目

文章目錄

  • 1 小程序概述
    • 1.1 什么是微信小程序
    • 1.2 大前端概念
    • 1.3 賬號注冊
    • 1.4 開發流程
    • 1.5 小程序成員
  • 2 創建項目
    • 2.1 創建項目流程
    • 2.2 創建項目
    • 2.3 本地開發支持http
  • 3 項目目錄
    • 3.1 項目目錄結構
    • 3.2 配置文件
      • 3.2.1 app.json(全局配置)
      • 3.2.2 xxx.json(頁面配置)
      • 3.2.3 project.config.json(項目配置)
      • 3.2.4 搜索相關配置
    • 3.3 WebView渲染模式
    • 3.4 新建頁面
    • 3.4 默認啟動頁面
    • 3.5 調試小程序
      • 3.5.1 調試基礎庫
      • 3.5.2 調試窗口
      • 3.5.3 真機調試
    • 3.6 純凈項目
      • 3.6.1 app.js
      • 3.6.2 app.json
      • 3.6.3 app.wxss(空的)
      • 3.6.4 pages/index/index.js
      • 3.6.5 pages/index/index.json
      • 3.6.6 pages/index/index.wxml
      • 3.6.7 pages/index/index.wxss(空的)
  • 4 參考附錄

安裝微信開發者工具、創建項目,介紹項目的配置文件,刪除不需要的文件,只保留核心,用于從基礎開發項目。

1 小程序概述

1.1 什么是微信小程序

微信小程序是一種運行在微信內部的輕量級應用程序。
小程序無需下載和安裝,只需要在微信中下拉,搜一搜或掃一掃搜索點擊使用即可。

1.2 大前端概念

1、后端(后端接口)
(1)python的django框架。
(2)python的flask框架。
(3)python的fastapi框架。
(4)go的gin框架。
(5)go的beego框架。
(6)java的ssh框架。
(7)java的ssm框架。
(8)java的springboot框架。

2、前端(大前端)
(1)瀏覽器中訪問的頁面(web頁面)—>html、css、js。
(2)安卓的app—>java。
(3)ios的app—>object C。
(4)微信小程序—>wxml、wxss、js。
(5)桌面端—>Qt平臺(python、c++)。
(6)鴻蒙開發。

3、前端統一開發框架
(1)uni-app
國人推出,使用html、css、js,使用vue的語法,在uni-app平臺開發,打包到安卓、ios、微信小程序、web端。
uni-app是一個使用Vue.js開發所有前端應用的框架,開發者可以編寫一套代碼,就能發布到iOS、Android、Web(響應式)、以及各種小程序(微信/支付寶/百度/頭條/QQ/快手等)等多個平臺。

(2)flutter
google推出,一處開發,編譯到ios、安卓、桌面。
Flutter是由Google開發和維護的一個開源UI軟件開發工具包(SDK),用于構建跨平臺的高性能、高保真的應用程序。
使用一套代碼庫,可以編譯并運行在iOS、Android、Web、Windows、macOS和Linux等多個平臺上,實現“一次編寫,多端運行”。

我會python的django開發,我可以開發安卓app嗎?可以開發微信小程序嗎?
django可以作為它們的后端,但是前端還是需要單獨開發。

1.3 賬號注冊

1、訪問【微信公眾平臺】,注冊一個微信小程序賬號
2、申請賬號需要準備一個郵箱,該郵箱要求:
未被微信公眾平臺注冊。
未被微信開放平臺注冊。
未被個人微信號綁定過。
如果被綁定了需要解綁或使用其他郵箱。
3、微信小程序信息配置
注冊成功后,需要打開微信公眾平臺對小程序賬號進行一些設置。
小程序后續需要提交審核和上線,提交審核時,小程序賬號信息是必填項,名稱、圖標、類目等。
小程序備案和微信認證。
在這里插入圖片描述

1.4 開發流程

在這里插入圖片描述
微信小程序–》本地開發環境–》線上環境。
(1)本地:微信開發者工具+Pycharm開發Django
(2)線上:
體驗版:幾個人體驗,API需要在公網。
發布:備案,API需要在公網,全國各地人都可以用。

1.5 小程序成員

微信小程序成員分為兩種:
(1)項目成員:表示參與小程序開發(我們)、運營的成員,包括運營者、開發者及數據分析者,項目成員可登陸微信公眾后臺,管理員可以在成員管理中添加、刪除項目成員,并設置項目成員的角色。
(2)體驗成員:表示參與小程序內測體驗的成員,可使用體驗版小程序,但不屬于項目成員。管理員及項目成員均可添加、刪除體驗成員。

2 創建項目

2.1 創建項目流程

1、獲取小程序id
小程序后臺–》管理–》開發管理–》開發設置–》開發者ID
AppID(小程序ID) wxxxxxxxxx
AppSecret(小程序密鑰) xxxxxxxxxxxx(不要泄露)
2、下載【微信開發者工具】–需要聯網才能使用
在這里插入圖片描述
3、安裝目錄D:\Program Files (x86)\Tencent\微信web開發者工具。

2.2 創建項目

1 打開微信開發者工具–》使用微信掃描二維碼
2 創建項目
填寫名字、路徑、APPID
不使用云開發【使用騰訊云的云函數,服務器等等,需要花錢】。
不使用模版。
在這里插入圖片描述
3 創建完成后,界面如下
在這里插入圖片描述
4、設置
設置–》編輯器設置–》改變字體大小。
視圖–》外觀–》移動模擬器位置。
可以勾選掉不顯示:模擬器,調試器等。

2.3 本地開發支持http

本地開發,使用Django寫后端,
Django運行在0.0.0.0:8000地址,
微信小程序才能通過ip地址訪問到我們的Django項目的接口,
微信小程序默認不支持http,但是Django運行在http上,修改一下微信小程序的配置,讓小程序支持http請求。
右上角–》詳情–》本地設置–》不校驗合法域名

3 項目目錄

3.1 項目目錄結構

1、項目主配置文件
項目主配置文件必須放到項目的根目錄下,控制整個項目
(1)app.js: 小程序入口文件,小程序啟動,會執行這個js
(2)app.json:小程序的全局配置文件:頂部的顏色、標題等等
(3)app.wxss:小程序的全局樣式
注意:app.js和app.json文件是必須的,不能沒有

2、頁面文件
小程序有一個個頁面,每個頁面所需的文件,都存放在pages目錄下,一個頁面一個文件夾
pages文件夾下,有一個個的文件夾(index,login,register),每個文件夾下有4個文件。
(1)xx.js: 頁面邏輯 js代碼存放位置
(2)xx.wxml:頁面結構 類html文件存放位置
(3)xx.wxss:頁面樣式 css存放位置,若全局樣式也有,以當前頁面為準
(4)xx.json:小頁面配置 當前頁面頂部顏色,標題
注意:xx.js文件和xx.wxml文件是必須的,不能沒有

├── components                  【頁面中使用的組件】
├── pages   					【頁面文件目錄】
│   ├── index					【頁面】
│   │   ├── index.js				【頁面JS】
│   │   ├── index.json				【頁面配置】
│   │   ├── index.wxml				【頁面HTML】
│   │   └── index.wxss				【頁面CSS】
│   └── logs					【頁面】
│       ├── logs.js					...
│       ├── logs.json				...
│       ├── logs.wxml				...
│       └── logs.wxss				...
├── utils						【自定義工具】
│	└── utils.js					【功能的定義】
├── app.js						【全局JS】
├── app.json					【全局配置】
├── app.wxss					【全局CSS】
├── project.config.json			【開發者工具默認配置】
├── project.private.config.json	【開發者工具用戶配置,在這里修改,優先用這個,可以刪除】
├── .eslintrc.js				【ESlint語法檢查配置】
├── sitemap.json				【微信收錄頁面,用于搜索,上線后,搜索關鍵字就可以搜到我們】

3.2 配置文件

3.2.1 app.json(全局配置)

1、小程序全局配置文件,用于配置小程序的一些全局屬性和頁面路由,默認標題,頂部顏色,是否有下拉刷新。
2、app.json 配置示例
entryPagePath:小程序默認啟動首頁
pages:小程序總共有多少個頁面
window:全局的默認窗口表現,頂部顏色,是否有下拉,它控制很多東西,這個經常用。

{"entryPagePath": "pages/login/login","pages": ["pages/index/index","pages/login/login"],"window": {"navigationBarTitleText": "功能演示",   # 標題"navigationBarBackgroundColor": "#0000FF", #顏色"enablePullDownRefresh": false,  # 是否帶下拉刷新"backgroundColor": "#00FFFF",    # 下拉刷新顏色"backgroundTextStyle": "dark"    # light ,下拉刷新的點點什么顏色},"style": "v2","sitemapLocation": "sitemap.json"
}

3.2.2 xxx.json(頁面配置)

1、小程序頁面配置文件,也稱局部配置文件,用于配置當前頁面的窗口樣式、頁面標題等。
2、app.json中的部分配置,也支持對單個頁面進行配置,可以在頁面對應的xxx.json 文件來對本頁面的表現進行配置。
3、頁面中配置項在當前頁面會覆蓋app.json中相同的配置項(樣式相關的配置項屬于app.json中的window屬性,但這里不需要額外指定window字段)。

{"usingComponents": {},"navigationBarTitleText": "登錄頁面","navigationBarBackgroundColor": "#000080","enablePullDownRefresh": true,"backgroundTextStyle": "light"
}

定義了當前頁面需要使用的自定義組件,usingComponents是一個對象,鍵(key)是組件的名稱,值(value)是組件的路徑。

3.2.3 project.config.json(項目配置)

(1)project.config.json
(2)project.private.config.json
小程序項目的配置文件,用于保存項目的一些配置信息和開發者的個人設置。
在這里插入圖片描述

3.2.4 搜索相關配置

微信現已開放小程序內搜索,開發者可以通過sitemap.json配置,或者管理后臺頁面收錄開關來配置其小程序頁面是否允許微信索引。

當開發者允許微信索引時,微信會通過爬蟲的形式,為小程序的頁面內容建立索引。
當用戶的搜索詞條觸發該索引時,小程序的頁面將可能展示在搜索結果中。

爬蟲訪問小程序內頁面時,會攜帶特定的user-agent:mpcrawler及場景值:1129。
需要注意的是,若小程序爬蟲發現的頁面數據和真實用戶的呈現不一致,那么該頁面將不會進入索引中。

以后用戶搜索小程序,任意頁面有關鍵字,都會被搜索到。

{"desc": "關于本文件的更多信息","rules": [{"action": "allow","page": "*"}]
}

3.3 WebView渲染模式

webview渲染模式和skyline渲染模式
(1)webview:老一點,穩定,支持低版本和高版本。
(2)skyline:新一點,不太穩定,不支持低版本。

默認使用Skyline渲染模式,支持最新的基礎庫,不支持低版本客戶端。
現在改成webview模式,打開app.json,去掉下面的三個配置項。

"renderer": "skyline",
"rendererOptions": {"skyline": {"defaultDisplayBlock": true,"disableABTest": true,"sdkVersionBegin": "3.0.0","sdkVersionEnd": "15.255.255"}
},
"componentFramework": "glass-easel",  

3.4 新建頁面

方式一:
1、在pages上,新建文件夾,logs
2、在文件夾上右鍵,新建頁面,寫上名字logs,自動創建出四個文件
3、在 app.json中的pages就會多一行

"pages": ["pages/index/index","pages/logs/logs"
],

方式二:
新建頁面可以直接在app.json中增加一行,pages下會自動創建出一個頁面。

"pages": ["pages/index/index","pages/logs/logs","pages/login/login"
],   

3.4 默認啟動頁面

修改小程序一啟動,就顯示的頁面。
方式一:修改順序

# app.json,誰在第一行,一打開小程序就顯示那個頁面"pages": ["pages/index/index","pages/logs/logs","pages/login/login"],

方式二:通過entryPagePath配置

# app.json
"entryPagePath": "pages/index/index",

方式三:臨時添加,臨時看一下
在這里插入圖片描述

3.5 調試小程序

3.5.1 調試基礎庫

微信小程序的基礎庫,一直在做版本升級
例如:轉發功能、發送朋友圈功能
不同的功能是在不同版本中加入的。

假設我們基于老版本的基礎庫開發的,有的新功能可能沒有,
在開發的時候,做功能如果發現寫了沒效果,確認一下這個基礎庫是否支持這個功能。
在這里插入圖片描述

3.5.2 調試窗口

在這里插入圖片描述Wxml:頁面布局。
Console:調試,我們打印的,小程序自己打印的。
Network:網絡請求。
AppData:當前頁面定義的變量。
Storage:本地存儲。

3.5.3 真機調試

微信掃二維碼,這樣在微信上就可以看到了。

3.6 純凈項目

刪除不需要的,只保留核心,用于從基礎開發。
(1)刪除components文件夾
(2)刪除.eslintrc.js
(3)刪除project.config.json
(4)刪除project.private.config.json
(5)刪除sitemap.json
在這里插入圖片描述

3.6.1 app.js

// app.js
App({})

3.6.2 app.json

{"pages": ["pages/index/index"],"window": {"navigationBarTitleText": "功能演示",   "navigationBarBackgroundColor": "#0000FF", "enablePullDownRefresh": true,  "backgroundColor": "#00FFFF",    "backgroundTextStyle": "dark"},"style": "v2"
}

(1)導航欄的顯示文本:功能演示
(2)導航欄的背景色:藍色
(3)是否下拉刷新:是
(4)下拉刷新的背景色:淺綠色
(5)下拉刷新里點號的顏色:light或dark
在這里插入圖片描述

3.6.3 app.wxss(空的)

3.6.4 pages/index/index.js

// index.js
Page({})

3.6.5 pages/index/index.json

{"usingComponents": {},"navigationBarTitleText": "登錄頁面",   "navigationBarBackgroundColor": "#FF0000", "enablePullDownRefresh": true,  "backgroundColor": "#00FFFF",    "backgroundTextStyle": "light"
}

頁面自己的配置優先使用。
在這里插入圖片描述

3.6.6 pages/index/index.wxml

<!--index.wxml-->
<view class="container">周筆暢
</view>

3.6.7 pages/index/index.wxss(空的)

4 參考附錄

參考微信公眾平臺官網
參考微信開發者工具下載地址
參考小程序全局配置的參考地址
參考小程序頁面配置的參考地址
參考小程序項目配置的參考地址
參考小程序搜索相關配置的參考地址
參考小程序調試基礎庫

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

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

相關文章

Go語言開發AI應用

為什么選擇Go語言開發AI應用在人工智能快速發展的今天&#xff0c;選擇合適的編程語言對于AI應用的成功至關重要。雖然Python長期以來被認為是AI開發的首選語言&#xff0c;但Go語言正在逐漸嶄露頭角&#xff0c;成為AI應用開發的有力競爭者。Go語言的核心優勢1. 卓越的性能表現…

10. 游戲開發中的TCP與UDP

1.TCP和UDP 2.TCP為什么慢于UDP 3.可靠UDP1.TCP和UDP 1).通過打電話的方式說明TCP和UDPa.TCP(傳輸控制協議), 就像打電話- 需要先撥號, 接通, 問候(建立連接)- 你一句, 我一句, 對方沒有聽清會要求你重復(確認與重傳)- 保證對話有條不紊, 內容準確無誤(可靠, 有序)- 如果信號不…

CMap常用函數

CMap 是 MFC 中用于存儲鍵值對&#xff08;key-value&#xff09;的關聯容器類&#xff0c;類似于 C 標準庫中的 std::map&#xff0c;但依賴 MFC 框架實現。它采用哈希表&#xff08;Hash Table&#xff09;作為底層數據結構&#xff0c;支持高效的鍵值查找、插入和刪除操作。…

Rocky9.0去堆疊雙發arp(支持“ARP 廣播雙發”)

摘要 在去堆疊/MLAG 場景下&#xff0c;默認 bonding 只會以單口回復 ARP&#xff0c;另一臺交換機收不到 ARP Reply。本文在 Linux bonding 驅動中增加參數 arp_broadcast_mode&#xff0c;當開啟時對 ARP 包臨時切換到 廣播模式&#xff0c;實現雙口同時發 ARP Reply。文內提…

網頁連接攝像頭

攝像機處理 <!-- camera_solve.html --> <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>…

FPGA雷達信號處理之:自適應門限閾值

一、原理 參考這個博主&#xff0c;講的很仔細&#xff1a;基于脈沖功率的雷達脈沖參數檢測原理詳解 二、FPGA實現 使用system generator搭建算法模型如下&#xff1a; 在這里&#xff0c;濾波器窗長度為8&#xff0c;原博主設置為50效果更好&#xff0c;門限公式如下&#xf…

Vue 中實現選中文本彈出彈窗的完整指南

在現代 Web 應用中&#xff0c;選中文本后顯示相關操作或信息是一種常見的交互模式。本文將詳細介紹如何在 Vue 中實現選中文本后彈出彈窗的功能&#xff0c;包括其工作原理、多種實現方式以及實際項目中的應用示例。 一、實現原理 1. 文本選中檢測機制 瀏覽器提供了 Select…

第4節-排序和限制-FETCH

摘要: 在本教程中&#xff0c;你將學習如何使用 PostgreSQL 的 FETCH 子句從查詢中檢索部分行。 PostgreSQL FETCH 簡介 在 PostgreSQL 中&#xff0c;OFFSET 子句的作用類似于 LIMIT 子句。FETCH 子句允許你限制查詢返回的行數。 LIMIT 子句并非 SQL 標準的一部分。不過&#…

洛谷 P2680 [NOIP 2015 提高組] 運輸計劃(二分答案 + 樹上差分)

題目鏈接題目概括與評價 很經典&#xff0c;突破口藏的很深&#xff0c;求最小值這里&#xff0c;是問題切入點&#xff0c;想到用二分答案&#xff0c;然后思考怎么寫 f_check 函數。二分答案樹上差分。代碼 #include <iostream> #include <vector> #include <…

接力鄧承浩,姜海榮能講好深藍汽車新故事嗎?

出品 | 何璽排版 | 葉媛深藍汽車迎來新話事人。9月5日&#xff0c;新央企長安汽車旗下品牌深藍汽車傳出新的人事調整。多家業內媒體報道稱&#xff0c;榮耀前中國區CMO姜海榮已正式加入長安汽車&#xff0c;并出任旗下深藍汽車CEO一職。原CEO鄧承浩則升任深藍汽車董事長&#x…

esp32-c3寫一個收集附近 WiFi 和藍牙信號通過

下面給你一個基于 ESP-IDF(v5.x) 的完整示例&#xff1a;在 ESP32-C3 上同時掃描附近 Wi-Fi 與藍牙&#xff08;BLE&#xff09;廣播&#xff0c;把結果以 JSON 結構統一輸出到串口&#xff0c;并且可可選通過 MQTT 上報到服務器&#xff08;打開一個宏即可&#xff09;。日志默…

文心大模型 X1.1:百度交出的“新深度思考”答卷

文心大模型 X1.1&#xff1a;百度交出的“新深度思考”答卷 2025年9月9日&#xff0c;WAVE SUMMIT 2025深度學習開發者大會在北京正式召開&#xff0c;由深度學習技術及應用國家工程研究中心主辦&#xff0c;百度飛槳與文心大模型聯合承辦。大會上&#xff0c;百度正式發布了基…

開始 ComfyUI 的 AI 繪圖之旅-Flux.1圖生圖(八)

文章標題一、Flux Kontext Dev1.關于 FLUX.1 Kontext Dev1.1 版本說明1.2 工作流說明1.3 模型下載2.Flux.1 Kontext Dev 工作流2.1 工作流及輸入圖片下載2.2 按步驟完成工作流的運行3.Flux Kontext 提示詞技巧3.1 基礎修改3.2 風格轉換3.3 角色一致性3.4 文本編輯4.常見問題解決…

Java 生成微信小程序二維碼

1. java 二維碼生成工具類import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONObject; import com.pdatao.api.controller.file.FileController; import com.pdatao.api.error.CommunityException; import org.apache.commons.io.IOUtils; import org.springframe…

智慧健康觸手可及:AI健康小屋——未來健康管理的全能守護者

AI健康小屋&#xff0c;這座融合人工智能、物聯網與醫療科技的“健康堡壘”&#xff0c;正悄然重構健康管理生態。它以科技為引擎&#xff0c;將專業醫療資源下沉至社區、企業、家庭&#xff0c;通過智能檢測、精準分析、個性化干預&#xff0c;實現從疾病治療到主動預防的健康…

[工作表控件19] 驗證規則實戰:如何用正則表達式規范業務輸入?

在企業應用中,數據準確性至關重要。工作表控件通過“驗證規則”能力,支持在文本字段和附件字段中使用正則表達式(RegEx)進行格式校驗。它能幫助開發者輕松實現郵箱、身份證號、車牌號、URL 等格式的高效驗證,大幅提升數據質量與表單使用體驗。 一、官方功能介紹與基礎能力…

uniapp分包實現

關于分包優化的說明 在對應平臺的配置下添加"optimization":{"subPackages":true}開啟分包優化 目前只支持mp-weixin、mp-qq、mp-baidu、mp-toutiao、mp-kuaishou的分包優化 分包優化具體邏輯&#xff1a; 靜態文件&#xff1a;分包下支持 static 等靜態…

ctfshow_web14------(PHP+switch case 穿透+SQL注入+文件讀取)

題目&#xff1a;解釋&#xff1a;$c intval($_GET[c]); //獲取整數值 6sleep($c);//延遲執行當前腳本若干秒。提示一下哈沒有break會接著執行下面的但是像是44444&#xff0c;555555,sleep的時間太久我們用3進入here_1s_your_f1ag.php是一個查詢頁面&#xff0c;sql注入查看源…

linux x86_64中打包qt

下載安裝 地址: Releases linuxdeploy/linuxdeploy mv linuxdeploy-x86_64.AppImage linuxdeployqtchmod 777 linuxdeployqtsudo mv linuxdeployqt /usr/local/bin/linuxdeployqt --version報錯 Applmage默認依賴FUSE&#xff0c;需要掛載自身為虛擬文件系統才能運行, ubuntu…

華為昇騰CANN開發實戰:算子自定義與模型壓縮技術指南

點擊 “AladdinEdu&#xff0c;同學們用得起的【H卡】算力平臺”&#xff0c;注冊即送-H卡級別算力&#xff0c;80G大顯存&#xff0c;按量計費&#xff0c;靈活彈性&#xff0c;頂級配置&#xff0c;學生更享專屬優惠。 摘要 隨著人工智能技術的飛速發展&#xff0c;越來越多…