微信小程序开发(保姆式教程,点赞+收藏)

这篇具有很好参考价值的文章主要介绍了微信小程序开发(保姆式教程,点赞+收藏)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信里面app,16年推出
竞品:支付宝小程序,钉钉,美团,头条,抖音qq小程序
优点
1,在微信里面自由分享,2,不用下载app,3,能快速的开发,使用微信的api接口
二,微信开发者工具

下载微信web开发者工具,根据自己的操作系统下载对应的安装包进行安装即可。

  • 新建项目
    微信开发小程序d,微信小程序,微信小程序,小程序,前端
  • 页面介绍

微信开发小程序d,微信小程序,微信小程序,小程序,前端

  • 项目组成

微信开发小程序d,微信小程序,微信小程序,小程序,前端

  • page.json 文件

微信开发小程序d,微信小程序,微信小程序,小程序,前端

5,新建页面

在pages文件夹右键建立新的文件夹
在文件中右键新建页面
哪个page在最上面,默认显示哪页
json要求严格语法,不能有多余的注释和逗号

微信开发小程序d,微信小程序,微信小程序,小程序,前端

微信开发小程序d,微信小程序,微信小程序,小程序,前端
文件用途

ceshi.wxml   页面
ceshi.js 写业务逻辑
ceshi.wxss 写页面样式
ceshi.json 页面配置

设置主页
微信开发小程序d,微信小程序,微信小程序,小程序,前端

把新建的文件路径调到最上面那就是主页了,意思就是,第一个路径就是首页的路径!

页面配置:
"enablePullDownRefresh": true,  允许下拉刷新
"backgroundTextStyle": "dark",  背景文字颜色
"backgroundColor":"#f70", 		背景颜色
"usingComponents":{}       		组件
三,基本语法

小程序的模板语法约等于vue的模板语法

1,文本渲染
{{ msg}}可以执行简单的js表达式
{{2+3}}
{{msg.length}}
2,条件渲染
wx:if=""
wx:elif=""
wx:else
3,列表渲染
wx:for="{{list}}"
wx:key="index"
	{{item}}
	{{index}}

4,自定义列表渲染
定义item与index的名称
wx:for="{{list}}}"
wx:for-item="myitem"
wx:for-index="myidx"
{{myidx}}
{{myitem}}

5,导入

import
只能导入template内容
template/utils.wxml
< template name=“userCart”> 用户名:{{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 等于一个屏幕的宽
375就是50%的宽

7,事件
bindInput     表单输入时
bindconfirm    表单输入确认
bindtap      点击时候

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 网络请求
12,生命周期
onLoad 							页面加载完毕
onPullDownRefresh 				下拉刷新
onReachBottom					 触底更新

四,页面切换
1,< navigator></ navigator >标签
这是最常见的一种跳转方式,相当于html里的a标签.但需要注意的是 该方法不能跳转tabbar页面.

格式为:

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

2,wx.navigateTo.
通过构造js函数,在函数中调用该接口可实现页面跳转的效果.但该接口同样不能跳转tabbar页面.跳转后左上角有返回小箭头,点击可返回原本页面.

格式为:

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

3,wx.redirectTo.
关闭当前页面,跳转到应用内的某个页面(不能跳转tabbar页面)。类似于html中的 window.open(‘…’);
跳转后左上角出现返回小箭头,点击后可返回原本页面.

格式为:

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

4,wx.switchTab.
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面;该方法只能跳转tabbar页面.

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

5,wx.reLaunch.
关闭所有页面,打开到应用内的某个页面。 跟 wx.redirectTo 一样左上角不会出现返回箭头,但两者却不完全相同;

格式为:

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

五 ,tabBar 全局配置
tabBar 是移动端应用常见的页面效果, 用于实现多页面 的快速切换 。
小程序中通常将其分为:

  1. 底部 tabBar

  2. 顶部 tabBar

    注意:
    tabBar中只能配置最少 2 个、最多 5 个 tab 页签
    当渲染顶部 tabBar 时,不显示 icon,只显示文本
    tabBar 的 6 个组成部分

① backgroundColor:				tabBar 的背景色
② selectedIconPath:			选中时的图片路径
③ borderStyle:					tabBar 上边框的颜色
④ iconPath:					未选中时的图片路径
⑤ selectedColor:				tab 上的文字选中时的颜色
⑥ color:						tab 上文字的默认(未选中)颜色
  1. tabBar 节点的配置项

  2. 每个 tab 项的配置选项

  3. 全局配置 - 案例:配置 tabBar

    配置 tabBar 选项
    ① 打开 app.json 配置文件,和 pages、window 平级,新增 tabBar 节点
    ② tabBar 节点中,新增 list 数组 ,这个数组中存放的,是每个 tab 项的配置对象
    ③ 在 list 数组中, 新增每一个 tab 项的配置对象 。对象中包含的属性如下: pagePath 指定当前 tab 对应的页面路径 【 必填 】
    text 指定当前 tab 上按钮的文字【 必填】
    iconPath 指定当前 tab 未选中时候的图片路径【可选】
    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":"简历信息","iconPath": "/pages/img/icon08.png","selectedIconPath": "/pages/img/icon08.png"},
            {"pagePath": "pages/skill/skill","text":"个人技能","iconPath": "/pages/img/icon04.png","selectedIconPath": "/pages/img/icon04.png"},
            {"pagePath": "pages/experience/experience","text":"项目经历","iconPath": "/pages/img/icon02.png","selectedIconPath": "/pages/img/icon02.png"},
            {"pagePath": "pages/Profile/Profile","text":"自我评价","iconPath": "/pages/img/icon06.png","selectedIconPath": "/pages/img/icon06.png"}
        ]
    },
    "window": {
        "backgroundTextStyle": "light",
        "navigationBarBackgroundColor": "#fff",
        "navigationBarTitleText": "Weixin",
        "navigationBarTextStyle": "black"
    },
    "style": "v2",
    "sitemapLocation": "sitemap.json"
}

六,页面传参
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 代码如下:
/**
   * 页面的初始数据
   */
  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',
      })
    }
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 更新导航栏的标题
    wx.setNavigationBarTitle({
      title: '导航与跳转',
    })
   
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.setData({num:app.globalData.num})
  },

页面传递的参数
页面传递的参数

<view>
姓名:{{name}},年龄{{age}}
</view>

七,封装 request
文件路径: utils/request.js

// 基础的url
const URI = {
  baseURL:"http://dida100.com"
}
// {name:"mumu",age:18} => name=mumu&age=18
function tansParams(obj){
  var  str = "";
  for(var k in obj){
    str+=k+"="+obj[k]+"&";
  }
  //移除最后一个&
  return str.slice(0,-1);
}
function request(option){
  var url = option.url;
  // 01 可以添加baseURL
  // 是不是以http开头的,是用url不是加上baseURL
  url = url.startsWith("http")?url:URI.baseURL+url;
  // 选项里面有params(get传入的参数)
  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,
    })
  }
  // 返回一个promise
  return new Promise((resolve,reject)=>{
      wx.request({
        // 请求的地址如果一http开头直接用url不是http开头添加我们 baseUrL
        url: url,
        method:option.method||"GET",//请求的方法 默认get
        data:option.data, //post出入的参数
        header,
        success(res){
          // 请求成功
          resolve(res.data);
        },
        fail(err){
          // 04 对错误进行处理
          wx.showToast({title:"加载失败",icon:"none"})
          // 请求失败
          reject(err);
        },
        complete(){
          // 关闭加载提示
          wx.hideToast();
        }
      })
  })
} 
// 定义get简易方法
request.get= (url,config)=>{
  return request({url,method:"get",...config})
}
// 定义post简易方法
request.post= (url,data,config)=>{
  return request({url,method:"post",data,...config})
}
// 导入request
module.exports={request}

八, 内置api

显示提示     showToast
本地存储      wx.setStorageSync(key,value)
本地取        wx.getStorageSync(key)
wx.request      网络请求

接着打开微信开发者工具, 新建example目录的项目就可以预览示例了。文章来源地址https://www.toymoban.com/news/detail-835359.html

到了这里,关于微信小程序开发(保姆式教程,点赞+收藏)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 保姆式手把手带你入门期权——期权行权全步骤(建议收藏)

    量化、期权实盘开户找我哦~ 期权行权是指期权合约中的权利方(买方)在合约规定的时间(到期日)、价格(执行价)和方式下,行使其购买或卖出的权利。在行权过程中,买方有权按照合约规定的价格执行期权,参与相关资产的交易。 首先我们要了解50ETF期权的基本合约

    2024年02月03日
    浏览(29)
  • uniapp打包ios保姆式教程【最新】

    安卓打包直接使用公共测试证书即可打包成功,简单方便,这里我会记录 ios 打包过程 一、前往官网登录 官网:苹果官网account中心 如果没有开发者账号请找相关教程去注册 下边步骤是有开发者账号的流程 二、添加证书 首先进入证书列表 添加证书: 往下走创建你想要的证书

    2024年02月04日
    浏览(28)
  • 保姆式教程-Qt配置QtXlsx库

    Qt Xlsx 模块提供了一组类来读写 Excel 文件。它不需要 Microsoft Excel,可以在 Qt5 支持的任何平台上使用。 该库可用于: 生成一个新的 .xlsx 文件 从现有的 .xlsx 文件中提取数据 编辑现有的 .xlsx 文件 以上介绍节选自官方文档 Qt Xlsx源代码下载链接 3.1.1 查看是否安装了Perl 如果前期

    2024年02月04日
    浏览(25)
  • Linux之Kafka保姆式详细安装教程

    《Kafka官网下载》 注意:下载的是二进制文件,不要下载源码!这里可以采用第三方下载工具加速下载,如:迅雷等 tar -zxvf是解压文件命令,-C表示把解压文件放到哪个目录下 修改环境变量 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下追加内容: 按ESC键后输入:wq保存,使

    2024年02月13日
    浏览(32)
  • 【科普向】Jmeter 如何测试接口保姆式教程

    现在对测试人员的要求越来越高,不仅仅要做好功能测试,对接口测试的需求也越来越多!所以也越来越多的同学问,怎样才能做好接口测试? 要真正的做好接口测试,并且弄懂如何测试接口,需要从如下几个方面去分析问题,再找准学习的的方向,才能让自己在工作中,运

    2024年02月09日
    浏览(31)
  • 抖音seo源码开发,开源技术保姆式搭建

    抖音SEO是通过一系列的技术手段和优化策略来提升视频内容在抖音平台内的曝光率和排名。其中主要包括以下几个方面: 1.优化。通过对视频的标题、描述等元素的进行优化,提高相关性和匹配度,让用户更容易搜索到相关视频。 2.标签优化。在上传视频时,合

    2024年02月16日
    浏览(34)
  • 西电通院大二项目设计保姆式教程(上位机部分)

    前言: 本文相关:西安电子科技大学通信工程学院大二项目设计 内容:安卓上位机软件开发、使用MQTT通信协议进行上位机与wifi模块之间的无线通信、wifi模块与下位机f411实现串口通信。 上位机部分:Android Studio、Arduino、友善之臂smart4418、esp8266无线通信模块 使用无线通信可

    2024年02月05日
    浏览(33)
  • Windows系统如何关闭防火墙保姆式教程,超详细

    前言 1.以学习为目的使用某些pojie软件时,需要关闭电脑防火墙,系统自带的杀毒软件(迈克菲等),后期下载的杀毒软件(360安全卫士,金山毒霸等),他们会有实时扫描功能,建议关掉,不然软件可能安装不成功,或者可能某天你的pojie软件突然就打不开了,发现相应的文

    2024年02月20日
    浏览(35)
  • linux 创建git项目并提交到gitee(保姆式教程)

    生成密钥 拷贝密钥到gitee 测试密钥是否生效 创建项目 提交代码

    2024年02月05日
    浏览(32)
  • stable diffusion本地搭建, 保姆式安装教程 已经填坑

    一、优势 对于Midjourney 高额的会员费,SD的高性价比成为了大多数人的选择 二、软件准备 1、在整个安装过程中,我们需要用到以下软件: Python 3.10.6 Git 一键启动器 软件可以到官网上自行下载,不会下载的也没关系,阿良已经帮你们把软件打包下载好了。 领取方法: 需要安

    2024年02月11日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包