亚洲AV永久无码精品放毛片,精品国产免费久久,成人午夜免费无码视频播放器,国产精品一区二区色欲AV

小程序開(kāi)發(fā)

結合設計經(jīng)驗與營(yíng)銷(xiāo)實(shí)踐,提供有價(jià)值的企業(yè)營(yíng)銷(xiāo)資訊

首頁(yè) > 新聞資訊 > 小程序開(kāi)發(fā)

微信小程序開(kāi)發(fā)/小程序開(kāi)發(fā)教程/小程序制作

2023/5/2 0:01:34 來(lái)源:微信小程序開(kāi)發(fā)
內容摘要:微信小程序的發(fā)展可謂異常火爆,同時(shí)微信小程序團隊也在暗暗發(fā)力,不斷地迭代升級新功能。小程序是一種新的開(kāi)放能力,開(kāi)發(fā)者可以快速地開(kāi)發(fā)一個(gè)小程序。小程序可以在微信內被便捷地獲取和傳播,同時(shí)具有出色的使用體驗。下面就來(lái)介紹一下微信小程序開(kāi)發(fā)教程。

一、小程序開(kāi)發(fā)教程

1、注冊微信小程序賬號

2、獲取APPID

APPID在哪里獲取呢,根據第一步注冊的小程序帳號,然后登陸上,找到左側“設置”,“開(kāi)發(fā)設置”,就看到APPID啦,把APPID復制下來(lái),留作備用。

3、綁定開(kāi)發(fā)者

如果在第一步注冊小程序帳號的時(shí)候,你不是管理員,那么這個(gè)時(shí)候,還需要綁定個(gè)開(kāi)發(fā)者,直接登錄小程序后臺,點(diǎn)左側“用戶(hù)身份”-點(diǎn)右側“編輯”添加成員,出現個(gè)二維碼,管理員掃描二維碼后,然后輸入開(kāi)發(fā)者微信號,勾選權限,確定,就可以了。


4、下載微信小程序開(kāi)發(fā)者工具

直接在微信小程序官方下載即可,根據不同的電腦系統下載對應的版本,安裝即可。

5、創(chuàng )建微信小程序項目

打開(kāi)步驟4中安裝好的小程序開(kāi)發(fā)工具,然后用開(kāi)發(fā)者(或者管理員)掃碼登錄,選擇創(chuàng )建“新項目”,填入步驟2獲取到的AppID,設置一個(gè)本地項目的名稱(chēng),并選擇一個(gè)本地的文件夾作為代碼存儲的目錄,點(diǎn)擊「新建項目」就可以了。

6、編寫(xiě)微信小程序代碼

編寫(xiě)代碼對新手來(lái)說(shuō)有點(diǎn)難度,不過(guò)我們可以從微信小程序官方上直接下載代碼實(shí)例,下載后,直接解壓到步驟5代碼存儲目錄內即可。這時(shí)我們會(huì )發(fā)現,有三個(gè)后綴的文件,分別為app.js、app.json、app.wxss。其中,.js后綴的是腳本文件,.json后綴的文件是配置文件,.wxss后綴的是樣式表文件。

app.js是小程序的腳本代碼。我們可以在這個(gè)文件中監聽(tīng)并處理小程序的生命周期函數、聲明全局變量。調用MINA提供的豐富的API,如本例的同步存儲及同步讀取本地數據。

app.json是對整個(gè)小程序的全局配置。我們可以在這個(gè)文件中配置小程序是由哪些頁(yè)面組成,配置小程序的窗口背景色,配置導航條樣式,配置默認標題。注意該文件不可添加任何注釋。

app.wxss是整個(gè)小程序的公共樣式表。我們可以在頁(yè)面組件的class屬性上直接使app.wxss中聲明的樣式規則。

7、創(chuàng )建微信小程序頁(yè)面

微信小程序中的每一個(gè)頁(yè)面的【路徑+頁(yè)面名】都需要寫(xiě)在app.json的pages中,且pages中的第一個(gè)頁(yè)面是小程序的首頁(yè)。

每一個(gè)小程序頁(yè)面是由同路徑下同名的四個(gè)不同后綴文件的組成,如:index.js、index.wxml、index.wxss、index.json。.js后綴的文件是腳本文件,.json后綴的文件是配置文件,.wxss后綴的是樣式表文件,.wxml后綴的文件是頁(yè)面結構文件。

8、手機預覽

開(kāi)發(fā)者工具左側菜單欄選擇"項目",點(diǎn)擊"預覽",掃碼后即可在微信客戶(hù)端中體驗。

9、上傳小程序代碼

開(kāi)發(fā)者工具左側菜單欄選擇"項目",點(diǎn)擊"上傳"即可將代碼上傳到微信小程序服務(wù)器。

10、提交微信審核及小程序發(fā)布

步驟9上傳好小程序代碼后,提交微信進(jìn)行審核。審核現在也很快,一把幾個(gè)小時(shí)就審核過(guò)了,慢的話(huà)估計2-5天吧,等審核通過(guò)后,就可以在小程序后臺,進(jìn)行發(fā)布上線(xiàn)了。


二、小程序設計指南


1、友好禮貌

為了避免用戶(hù)在微信中使用小程序服務(wù)時(shí),注意力被周?chē)鷱碗s環(huán)境干擾,小程序在設計時(shí)應該注意減少無(wú)關(guān)的設計元素對用戶(hù)目標的干擾,禮貌地向用戶(hù)展示程序提供的服務(wù),友好地引導用戶(hù)進(jìn)行操作。

每個(gè)頁(yè)面都應有明確的重點(diǎn),以便于用戶(hù)每進(jìn)入一個(gè)新頁(yè)面的時(shí)候都能快速地理解頁(yè)面內容。在確定了重點(diǎn)的前提下,應盡量避免頁(yè)面上出現其它與用戶(hù)的決策和操作無(wú)關(guān)的干擾因素。

2、流程明確

為了讓用戶(hù)順暢地使用頁(yè)面,在用戶(hù)進(jìn)行某一個(gè)操作流程時(shí),應避免出現用戶(hù)目標流程之外的內容而打斷用戶(hù)。

3、便捷優(yōu)雅

從PC時(shí)代的物理鍵盤(pán)鼠標到移動(dòng)端時(shí)代手指,雖然輸入設備極大精簡(jiǎn),但是手指操作的準確性卻大大不如鍵盤(pán)鼠標精確。為了適應這個(gè)變化,需要開(kāi)發(fā)者在設計過(guò)程中充分利用手機特性,讓用戶(hù)便捷優(yōu)雅的操控界面。

4、統一穩定

除了以上所提到的種種原則,建議接入微信的小程序還應該時(shí)刻注意不同頁(yè)面間的統一性和延續性,在不同的頁(yè)面盡量使用一致的控件和交互方式。

統一的頁(yè)面體驗和有延續性的界面元素都將幫助用最少的學(xué)習成本達成使用目標,減輕頁(yè)面跳動(dòng)所造成的不適感。正因如此,小程序可根據需要使用微信提供的標準控件,以達到統一穩定的目的。

5、字體

微信內字體的使用與所運行的系統字體保持一致,常用字號為20,18,17,16,14 13,11(pt),主內容Black黑色,次要內容Grey灰色;時(shí)間戳與表單缺省值Light灰色;大段的說(shuō)明內容而且屬于主要內容用Semi黑。藍色為鏈接用色,綠色為完成字樣色,紅色為出錯用色Press與Disable狀態(tài)分別降低透明度為20%與10%。


微信小程序開(kāi)發(fā)(超詳細保姆式教程)


微信小程序介紹


微信里面app;16年推出
競品:支付寶小程序,釘釘,美團,頭條,抖音qq小程序
優(yōu)點(diǎn)
1,在微信里面自由分享,2,不用下載app,3,能快速的開(kāi)發(fā),使用微信的api接口

開(kāi)發(fā)者
內存,源碼,圖片,存儲,接口與數據都有限制

一,注冊微信小程序

如果你還沒(méi)有微信公眾平臺的賬號,請先進(jìn)入微信公眾平臺首頁(yè),點(diǎn)擊 “立即注冊” 按鈕進(jìn)行注冊。注冊的賬號類(lèi)型可以是訂閱號、服務(wù)號、小程序以及企業(yè)微信,我們選擇 “小程序” 即可。

接著(zhù)填寫(xiě)賬號信息,需要注意的是,填寫(xiě)的郵箱必須是未被微信公眾平臺注冊、未被個(gè)人微信號綁定的郵箱,而且每個(gè)郵箱僅能申請一個(gè)小程序。

激活郵箱之后,選擇主體類(lèi)型為 “個(gè)人類(lèi)型”,并按要求登記主體信息。主體信息提交后不可修改,該主體將成為你使用微信公眾平臺各項服務(wù)和功能的唯一法律主體與締約主體,在后續開(kāi)通其他業(yè)務(wù)功能時(shí)不得變更或修改。

在這里插入圖片描述

二,微信開(kāi)發(fā)者工具

下載微信web開(kāi)發(fā)者工具,根據自己的操作系統下載對應的安裝包進(jìn)行安裝即可。

1,新建項目

在這里插入圖片描述
在這里插入圖片描述

![在這里插入圖片描述](https://img-blog.csdnimg.cn/bf3c52e9bdc643ab9b1370e5ab87fc0f.png
微信小程序開(kāi)發(fā)

2,頁(yè)面介紹

在這里插入圖片描述

3,項目組成

在這里插入圖片描述

4,page.json 文件

在這里插入圖片描述

pages 注冊頁(yè)面
window 窗口信息

5,新建頁(yè)面

  1. 在pages文件夾右鍵建立新的文件夾

  2. 在文件中右鍵新建頁(yè)面

  3. 哪個(gè)page在最上面,默認顯示哪頁(yè)

  4. json要求嚴格語(yǔ)法,不能有多余的注釋和逗號

在這里插入圖片描述
在這里插入圖片描述

這樣新的頁(yè)面就建好了我們來(lái)看看都有什么

在這里插入圖片描述

ceshi.wxml 模板文件
ceshi.js 業(yè)務(wù)邏輯
ceshi.wxss 樣式
ceshi.json 頁(yè)面配置

在這里插入圖片描述
把新建的文件路徑調到最上面那就是主頁(yè)了,意思就是,第一個(gè)路徑就是首頁(yè)的路徑!

頁(yè)面配置:

"enablePullDownRefresh": true,  允許下拉刷新"backgroundTextStyle": "dark",  背景文字顏色"backgroundColor":"#f70", 		背景顏色"usingComponents":{}       		組件

三,基本語(yǔ)法

小程序的模板語(yǔ)法約等于vue的模板語(yǔ)法

1,文本渲染

{{ msg}}可以執行簡(jiǎn)單的js表達式
{{2+3}}
{{msg.length}}

2,條件渲染

wx:if=""
wx:elif=""
wx:else

3,列表渲染

wx:for="{{list}}"
wx:key="index"
	{{item}}
	{{index}}

4,自定義列表渲染

定義item與index的名稱(chēng)
wx:for="{{list}}}"
wx:for-item="myitem"
wx:for-index="myidx"
{{myidx}}
{{myitem}}

5,導入

(不常用)

import
只能導入template內容
template/utils.wxml
< template name=“userCart”> 用戶(hù)名:{{name}} < /temlate>
home.wxml
< import src=“/template/utils.wxml”>
< tempate is=“userCart” data=“{{…u1}}”>

include
只能導入非template內容
template/foot.wxml < view> {{內容}} </ view>
home.wxml < include src=“/template/foot.wxml”>

6,wxss

默認單位是rpx
750rpx 等于一個(gè)屏幕的寬
375就是50%的寬

7,事件

bindInput     表單輸入時(shí)
bindconfirm    表單輸入確認
bindtap      點(diǎn)擊時(shí)候

8,內置組件

view         組件塊組件
text         組件行內組件
button       組件按鈕
input        組件表單

9,事件的傳參

<button data-msg="xxx" bindtap="tapHd">
獲取事件的參數  e.target.dataset.msg

10,表單的綁定

<input value="{{s1}}" bindinput="inputHd">
inputHd(e){
 this.setData({s1:e.detail.value})
}
表單的值獲取:e.detail.value

11,內置的api

顯示提示

  • showToast

本地存儲

  • wx.setStorageSync(key,value)

本地取

  • wx.getStorageSync(key)

  • wx.request 網(wǎng)絡(luò )請求

12,生命周期

onLoad 							頁(yè)面加載完畢
onPullDownRefresh 				下拉刷新
onReachBottom					 觸底更新

四,頁(yè)面切換

1,< navigator></ navigator >標簽

這是最常見(jiàn)的一種跳轉方式,相當于html里的a標簽.但需要注意的是 該方法不能跳轉tabbar頁(yè)面.

格式為:

 <navigator url="........"></navigator> <navigator url="/pages/event/event">前往event</navigator>

2,wx.navigateTo.

通過(guò)構造js函數,在函數中調用該接口可實(shí)現頁(yè)面跳轉的效果.但該接口同樣不能跳轉tabbar頁(yè)面.跳轉后左上角有返回小箭頭,點(diǎn)擊可返回原本頁(yè)面.

格式為:

//<!**wxml文件**><view class="select_calculator" bindtap="next_calculator">//js文件next_calculator:function () {
    wx.navigateTo({      url: '/pages/calculator/calculator',    })

3,wx.redirectTo.

關(guān)閉當前頁(yè)面,跳轉到應用內的某個(gè)頁(yè)面(不能跳轉tabbar頁(yè)面)。類(lèi)似于html中的 window.open(‘…’);
跳轉后左上角出現返回小箭頭,點(diǎn)擊后可返回原本頁(yè)面.

格式為:

<view>  <navigator open-type="redirect" url="/pages/event/event">跳轉并替換</navigator></view>

4,wx.switchTab.

跳轉到 tabBar 頁(yè)面,并關(guān)閉其他所有非 tabBar 頁(yè)面&#xff1b;該方法只能跳轉tabbar頁(yè)面.

wxml
在這里插入圖片描述
js

  post_calculator:function () {
    wx.switchTab({      url: '/pages/calculator/calculator',    })  }, })

5,wx.reLaunch.

關(guān)閉所有頁(yè)面,打開(kāi)到應用內的某個(gè)頁(yè)面。 跟 wx.redirectTo 一樣左上角不會(huì )出現返回箭頭,但兩者卻不完全相同&#xff1b;

格式為:

<view>  <navigator open-type="reLaunch">重啟</navigator></view>

五 ,tabBar 全局配置

tabBar 是移動(dòng)端應用常見(jiàn)的頁(yè)面效果, 用于實(shí)現多頁(yè)面 的快速切換 。
小程序中通常將其分為:
1,底部 tabBar
2,頂部 tabBar

在這里插入圖片描述

1, 注意:

  1. tabBar中只能配置最少 2 個(gè)、最多 5 個(gè) tab 頁(yè)簽

  2. 當渲染頂部 tabBar 時(shí),不顯示 icon,只顯示文本

2,tabBar 的 6 個(gè)組成部分

在這里插入圖片描述

① backgroundColor:				tabBar 的背景色

② selectedIconPath:			選中時(shí)的圖片路徑

③ borderStyle:					tabBar 上邊框的顏色

④ iconPath:					未選中時(shí)的圖片路徑

⑤ selectedColor:				tab 上的文字選中時(shí)的顏色

⑥ color:						tab 上文字的默認&#xff08;未選中&#xff09;顏色

3. tabBar 節點(diǎn)的配置項

在這里插入圖片描述

4. 每個(gè) tab 項的配置選項

在這里插入圖片描述

5,全局配置 - 案例:配置 tabBar

在這里插入圖片描述

配置 tabBar 選項

① 打開(kāi) app.json 配置文件,和 pages、window 平級,新增 tabBar 節點(diǎn)
② tabBar 節點(diǎn)中,新增 list 數組 ,這個(gè)數組中存放的,是每個(gè) tab 項的配置對象
③ 在 list 數組中, 新增每一個(gè) tab 項的配置對象 。對象中包含的屬性如下: pagePath 指定當前 tab 對應的頁(yè)面路徑 【 必填 】
text 指定當前 tab 上按鈕的文字【 必填】
iconPath 指定當前 tab 未選中時(shí)候的圖片路徑【可選】
selectedIconPath 指定當前 tab 被選中后高亮的圖片路徑【可選】

代碼如下:

{    "pages": [        "pages/hone/hone",        "pages/Profile/Profile",        "pages/experience/experience",        "pages/skill/skill",        "pages/index/index",        "pages/logs/logs"    ],    "tabBar":{        "color": "#777",        "selectedColor": "#1cb9ce",        "list":[            {"pagePath": "pages/hone/hone","text":"簡(jiǎn)歷信息","iconPath": "/pages/img/icon08.png","selectedIconPath": "/pages/img/icon08.png"},            {"pagePath": "pages/skill/skill","text":"個(gè)人技能","iconPath": "/pages/img/icon04.png","selectedIconPath": "/pages/img/icon04.png"},            {"pagePath": "pages/experience/experience","text":"項目經(jīng)歷","iconPath": "/pages/img/icon02.png","selectedIconPath": "/pages/img/icon02.png"},            {"pagePath": "pages/Profile/Profile","text":"自我評價(jià)","iconPath": "/pages/img/icon06.png","selectedIconPath": "/pages/img/icon06.png"}        ]    },    "window": {        "backgroundTextStyle": "light",        "navigationBarBackgroundColor": "#fff",        "navigationBarTitleText": "Weixin",        "navigationBarTextStyle": "black"    },    "style": "v2",    "sitemapLocation": "sitemap.json"}

六,頁(yè)面傳參

wxml 代碼如下:

<view>  <navigator open-type="navigate" url="/pages/event/event?name=mumu&age=18">事件event</navigator></view><view>  <navigator open-type="redirect" url="/pages/event/event?name=曾慶林&age=33">跳轉并替換</navigator></view>

js 代碼如下:

/**
   * 頁(yè)面的初始數據
   */  data: {    num:null,  },  goEvent(e){    // 獲取到傳遞的參數type    var type = e.target.dataset.type;    // 如果type值是redirect 替換跳轉    if(type=="redirect"){
      wx.redirectTo({        url: "/pages/event/event",      })    }else{      // 否則就普通跳轉
      wx.navigateTo({        url: '/pages/event/event',      })    }  },  /**
   * 生命周期函數--監聽(tīng)頁(yè)面加載
   */  onLoad(options) {    // 更新導航欄的標題
    wx.setNavigationBarTitle({      title: '導航與跳轉',    })   
  },  /**
   * 生命周期函數--監聽(tīng)頁(yè)面顯示
   */  onShow() {    this.setData({num:app.globalData.num})  },

頁(yè)面傳遞的參數

<view>頁(yè)面傳遞的參數</view><view>姓名:{{name}},年齡{{age}}</view>

七,封裝 request

文件路徑: utils/request.js

// 基礎的urlconst URI = {  baseURL:"http://dida100.com"}// {name:"mumu",age:18} => name=mumu&age=18function tansParams(obj){  var  str = "";  for(var k in obj){
    str+=k+"="+obj[k]+"&";  }  //移除最后一個(gè)&  return str.slice(0,-1);}function request(option){  var url = option.url;  // 01 可以添加baseURL  // 是不是以http開(kāi)頭的,是用url不是加上baseURL
  url = url.startsWith("http")?url:URI.baseURL+url;  // 選項里面有params&#xff08;get傳入的參數&#xff09;  if(option.params){    // 如果有參數,把參數轉換為url編碼形式加入
    url+="?"+tansParams(option.params);  }  // 02 可以添加請求頭  var  header = option.header||{};
  header.Authorization ="Bearer "+wx.getStorageSync('token');  // 03 可以添加加載提示  if(option.loading){
    wx.showToast({      title: option.loading.title,      icon:option.loading.icon,    })  }  // 返回一個(gè)promise  return new Promise((resolve,reject)=>{
      wx.request({        // 請求的地址如果一http開(kāi)頭直接用url不是http開(kāi)頭添加我們 baseUrL        url: url,        method:option.method||"GET",//請求的方法 默認get        data:option.data, //post出入的參數
        header,        success(res){          // 請求成功          resolve(res.data);        },        fail(err){          // 04 對錯誤進(jìn)行處理
          wx.showToast({title:"加載失敗",icon:"none"})          // 請求失敗          reject(err);        },        complete(){          // 關(guān)閉加載提示
          wx.hideToast();        }      })  })} // 定義get簡(jiǎn)易方法request.get= (url,config)=>{  return request({url,method:"get",...config})}// 定義post簡(jiǎn)易方法request.post= (url,data,config)=>{  return request({url,method:"post",data,...config})}// 導入requestmodule.exports={request}

八, 內置api

顯示提示     showToast
本地存儲      wx.setStorageSync(key,value)本地取        wx.getStorageSync(key)wx.request      網(wǎng)絡(luò )請求

九,Vant Weapp 輕量、可靠的小程序 UI 組件庫

介紹

Vant 是一個(gè)輕量、可靠的移動(dòng)端組件庫,于 2017 年開(kāi)源。
目前 Vant 官方提供了 Vue 2 版本、Vue 3 版本和微信小程序版本,并由社區團隊維護 React 版本和支付寶小程序版本。

1,安裝

在這里插入圖片描述

步驟一 通過(guò) npm 安裝

使用 npm 構建前,請先閱讀微信官方的 npm 支持

# 通過(guò) npm 安裝
npm i @vant/weapp -S --production

# 通過(guò) yarn 安裝
yarn add @vant/weapp --production

# 安裝 0.x 版本
npm i vant-weapp -S --production

步驟二 修改 app.json

開(kāi)發(fā)者工具創(chuàng )建的項目,miniprogramRoot 默認為 miniprogram,package.json 在其外部,npm 構建無(wú)法正常工作。
需要手動(dòng)在 project.config.json 內添加如下配置,使開(kāi)發(fā)者工具可以正確索引到 npm 依賴(lài)的位置。

{  ...  "setting": {    ...    "packNpmManually": true,    "packNpmRelationList": [      {        "packageJsonPath": "./package.json",        "miniprogramNpmDistDir": "./miniprogram/"      }    ]  }}

注意:

由于目前新版開(kāi)發(fā)者工具創(chuàng )建的小程序目錄文件結構問(wèn)題,npm構建的文件目錄為miniprogram_npm,并且開(kāi)發(fā)工具會(huì )默認在當前目錄下創(chuàng )建miniprogram_npm的文件名,所以新版本的miniprogramNpmDistDir配置為 ‘./’ 即可

步驟四 構建 npm 包

打開(kāi)微信開(kāi)發(fā)者工具,點(diǎn)擊 工具 -> 構建 npm,并勾選 使用 npm 模塊 選項,構建完成后,即可引入組件。

在這里插入圖片描述

步驟五 typescript 支持

如果你使用 typescript 開(kāi)發(fā)小程序,還需要做如下操作,以獲得順暢的開(kāi)發(fā)體驗。

安裝 miniprogram-api-typings

# 通過(guò) npm 安裝
npm i -D miniprogram-api-typings

# 通過(guò) yarn 安裝
yarn add -D miniprogram-api-typings

在 tsconfig.json 中增加如下配置,以防止 tsc 編譯報錯。
請將path/to/node_modules/@vant/weapp修改為項目的 node_modules 中 @vant/weapp 所在的目錄。

{  ...  "compilerOptions": {    ...    "baseUrl": ".",    "types": ["miniprogram-api-typings"],    "paths": {      "@vant/weapp/*": ["path/to/node_modules/@vant/weapp/dist/*"]    },    "lib": ["ES6"]  }}

2,使用

引入組件

以 Button 組件為例,只需要在app.json或index.json中配置 Button 對應的路徑即可。
所有組件文檔中的引入路徑均以 npm 安裝為例,如果你是通過(guò)下載源代碼的方式使用 @vant/weapp,請將路徑修改為項目中 @vant/weapp 所在的目錄。

// 通過(guò) npm 安裝// app.json"usingComponents": {  "van-button": "@vant/weapp/button/index"}
// 通過(guò)下載源碼使用 es6版本// app.json"usingComponents": {  "van-button": "path/to/@vant/weapp/dist/button/index"}
// 通過(guò)下載源碼使用 es5版本// app.json"usingComponents": {  "van-button": "path/to/@vant/weapp/lib/button/index"}

使用組件

引入組件后,可以在 wxml 中直接使用組件

<van-button type="primary">按鈕</van-button>

3,其他

在開(kāi)發(fā)者工具中預覽示例小程序

# 將項目克隆到本地
git clone git@github.com:youzan/vant-weapp.git

# 安裝項目依賴(lài)
cd vant-weapp && npm install

# 執行組件編譯
npm run dev

接著(zhù)打開(kāi)微信開(kāi)發(fā)者工具,導入example目錄的項目就可以預覽示例了。

文章來(lái)源:https://blog.csdn.net/m0_64875238/article/details/127796691  版權歸作者所有

http://www.ezekroy.com/xiaochengxukaifa/9136.html 微信小程序開(kāi)發(fā)/小程序開(kāi)發(fā)教程/小程序制作

特別聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉載內容為主,如果涉及侵權請盡快告知,我們將會(huì )在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請聯(lián)系客服。電話(huà):0755-85297058;郵箱:2295772445#qq.com (#替換成@)。
QQ咨詢(xún)
微信咨詢(xún)
微信咨詢(xún)
電話(huà)咨詢(xún)
周一至周五 9:00-18:00
135-1055-3738
回頂部