微信小程序记录

本文介绍了微信小程序项目的基本结构,重点讲解了根目录下的app.json配置文件,包括页面路径、窗口样式、底部菜单设置等内容,以及pages文件夹中home页面的index.js页面逻辑,涉及数据绑定、条件渲染、事件处理等关键知识点。
摘要由CSDN通过智能技术生成

创建项目 项目文件结构 项目配置 页面结构

根目录下 app.json 是小程序配置文件来的

app.json

{
  "pages": [  // 页面路径
    "pages/home/index",
    "pages/me/index",
    "pages/detail/index"
  ],
  "window": {
    "navigationBarTitleText": "我的小程序", // 导航栏标题文字内容
    "navigationBarBackgroundColor": "#ffffff", // 导航栏背景颜色
    "navigationBarTextStyle": "black", // 导航栏标题颜色,仅支持 black 或 white
    "backgroundTextStyle": "light", // 下拉 loading 的样式,仅支持 dark 或 light
    "backgroundColor": "#ffffff" // 窗口的背景色
  },
  // 底部菜单配置,list至少2个最多5个
  "tabBar": {
    "color": "#666666",
    "selectedColor": "#3cc51f",
    "backgroundColor": "#ffffff",
    "borderStyle": "black",
    "list": [
      {
        "pagePath": "pages/home/index",  // 底部菜单对应的页面路径
        "text": "首页",
        "iconPath": "images/home.png", // 未选中的icon
        "selectedIconPath": "images/home_on.png" // 选中的icon
      },
      {
        "pagePath": "pages/me/index",
        "text": "我的",
        "iconPath": "",
        "selectedIconPath": ""
      }
    ]
  },
}

根目录下的 pages 文件夹

创建home页面 pages/home/index

index.wxml 和 index .wxss 文件 对应着html和css

index.json是单前页面配置文件:如页面名称

index.js 页面逻辑

这个文件有个固定结构 数据的data:{}、生命周期、和自己编写的函数,如下

Page({

  /**
   * 页面的初始数据
   */
  data: {}, 
  // 生命周期函数会自动调用的
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {},
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {},
  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {},
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {},
  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {},
  
  // 自己的处理函数
  yourFun() {},
  
})

// page 包裹着的对页面才起作用
// 在page外面写的js语句作用域只在这个文件

这里开始语法

index.js

// pages/home/index.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    str: '数据绑定',
    arr: [1, 2, 3],
    list: [{id: 1, name: '张三'}, {id: 2, name: '李四'} ],
    isShow: false,
  },
  
  /**
   *   没用到的 生命周期函数 是可以删掉的
   */
    
  /**
   *  自定义的  clickBtn: function() {} 或 clickBtn() {} 都一样
   */
  clickBtn1() {
    console.log('被触发了');
  },
  clickBtn2(event) {
    console.log('被触发了有参数过来', event);
    console.log('自定义传参过了的参数在', event.currentTarget.dataset);
    // event.currentTarget.dataset
    // 打印结果 {id: 1, name: "有传参数"}
  },

  //  自定义的  页面跳转
  goPage() {
    // index.js
    wx.navigateTo({
      url: '/pages/detail/index'
    });
  },
  
  // 自定义的 修改数据 函数
  editStr() {
    this.setData({str: '绑定的数据改变了'}) // 跟新页面数据
    // 这时候页面上的  {{str}}  这里就会显示刚刚上面改的

    // 修改 data: {} 这个里面的内容一定要调用 this.setData()
    // this.setData(obj)  这个方法是接收一个对象的
      
    // 调用函数 
    // 比如这个函数想调用 clickBtn1 这个函数 
    this.clickBtn1()
  },

})

index.wxml

<!--pages/home/index.wxml-->
<view>
    <!-- 数据绑定 -->
	<view>{{str}}</view>
    
	<!-- 条件渲染 -->
	<view wx:if="{{isShow}}">1</view>

	<!-- 列表渲染 或叫 循环渲染  -->
	<view wx:for="{{list}}" wx:for-item="items" wx:key="index">
		<view>{{items.name}}</view>
	</view>

    <!-- 点击事件 -->
	<view bindtap="clickBtn1">按钮1 无传参数</view>
	<view bindtap="clickBtn2" data-name="有传参数" data-id="{{1}}">按钮2 有传参数</view>

	<view bindtap="goPage">点击跳转详情页面</view>
    
    <view bindtap="editStr">点击去修改str的值</view>
    
</view>

还有 组件 的内容,后续再补充

这些官网文档都有说的 小程序开发文档

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值