简单的可上网微信小程序创建和布局——课程四

第一步,在pages下建立自己的一个文件夹:pages(右键)—>新建目录->mypages(右键)->新建page。

同理,建一个log_in文件,和上面一样,文件名不同而已。

然后我们的目标首先是做成下面的页面:

这里涉及了组件tabBar(后面还涉及了组件input和组件button)

详细看文档或者下面这个网址。

https://www.cnblogs.com/huangjialin/p/6278429.html

那么如何设置呢?

打开app.json然后增加一个板块:

 1 {
 2   "pages": [
 3     "pages/index/index",
 4     "pages/logs/logs",
 5     //你如果按照上面所说步骤的话,系统会自动写下面这两行,否则出问题。
 6     "pages/mypages/page_one",
 7     "pages/log_in/log_in"
 8   ],
 9   "window": {
10     "backgroundTextStyle": "light",
11     "navigationBarBackgroundColor": "#fff",
12     "navigationBarTitleText": "WeChat",
13     "navigationBarTextStyle": "black"
14   },
15   //新加部分………………………………………………………………
16   "tabBar": {
17     "color": "#888",
18     "selectedColor": "green",
19     "backgroundColor": "#333",
20     "list": [
21       {
22         "pagePath": "pages/index/index",
23         "text": "首页",
24         "iconPath": "image/11.png",
25         "selectedIconPath": "image/12.png"
26       },
27       {
28         "text": "logs",
29         "pagePath": "pages/logs/logs",
30         "iconPath": "image/21.png",
31         "selectedIconPath": "image/22.png"
32       },
33       {
34         "text": "myPages",
35         "pagePath": "pages/mypages/page_one",
36         "iconPath": "image/21.png",
37         "selectedIconPath": "image/22.png"
38       }
39     ]
40   }
41   //………………………………………………………………………………
42 }

用的时候把注释去掉。

然后点击保存并编译一下,

这样第一个页面就做好了。

这里的图片是外部资源。你们去找小一点的图片,改下名字,放在你的image文件夹里就行。最好是png格式,这样背景透明,看起来好看。

点击logs图标:

点击mypages图标:

只要这么一行字。

然后呢?我想想……

来做登陆部分,目标如下图:

给log_in.js加加代码。

查看input组件的信息,然后写。学会自己去查

 

<view>
  <input placeholder='请输入用户名' bindinput='usernameInput' auto-focus=''/>
  <input placeholder='请输入用户密码'  bindinput='passwordInput'  password='true'/>
  <button type='primary' bindtap='loginClick'>登陆</button>
</view>

  这个代码的功能就是显示上面的内容。虽然现在你点击不了登陆什么的,甚至看不了页面。

你去把app.json改下。

红圈部分改成pages/log_in/log_in.也就是显示login页面。

 这样就可以看到效果了。

但是最后要记得改回来,因为你是要访问mypages里面的page_one,但是page_one检查你没有登陆,所以不给你查看的权限。

要跳转到登陆页面,于是你点击mypages按钮,应该是马上弹出来一个login的窗口,让你输入密码,登陆后再给你这个mypages页面。

始终记得你要做的逻辑,对代码的编写有一定帮助把。。

 

 

现在你输入密码账号点登陆什么反应都没有。那就来写下内部逻辑把。

注意到在这里,已经给你自动绑定了输入内容。

先在app.js里建一个全局变量来保存用户名和密码。

所以就去改函数逻辑就行。打开log_in.js

在最上面增加变量来存数据:

然后用函数去取数据:

 

带注释的版本:

 

括号你自己对齐一下。改完这个程序是这样的。

// pages/log_in/log_in.js

Page({

  /**
   * 页面的初始数据
   */
  data: {
    username: null,
    password: null
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
  },
  usernameInput: function (e) {
    this.setData({ username: e.detail.value })
  },
  passwordInput: function (e) {
    this.setData({ password: e.detail.value })
  },
  loginClick: function (e) {

    if (this.data.username == "admin" && this.data.password == "456") {
      app.globalData.username = this.data.username
      wx.switchTab({
        //to do change page
        url: '../mypages/page_one',
        fail(e) {
          console.log(e)
        }
      })
    }
   
  }
})

  在调试台,你打开mypages,输入密码456,点击登陆,你希望看到下面这个。

然而还是没有反应,咋整。

因为你没有修改跳转的逻辑呗。。。

注意到,这里我们希望用户倘若没有登陆,就去登陆一个。那么,没有注册的用户是看不到页面的。要是你没登陆都能看到,那不是飞起了???

打开page_one.js修改这里的onload函数,用wx.redirectTo去定向。

 

 

 这样如果你没有登陆,他就会要求你登陆了。这样基础就完成了。

注意log_in和page_one都要加左边那一条去获取页面实例。

后续内容: (总代码在下面网址附上)

https://www.cnblogs.com/hitWTJ/p/9866294.html

转载于:https://www.cnblogs.com/hitWTJ/p/9865940.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值