美文网首页
小程序项目入门以及一些填坑日常

小程序项目入门以及一些填坑日常

作者: suzixuan | 来源:发表于2018-09-03 02:53 被阅读0次

在开启你的第一个小程序项目之前,你需要做一些准备工作,这是小程序的简易教程文档地址:https://developers.weixin.qq.com/miniprogram/dev/。你需要申请一个小程序账号,获取你的AppID,同时,下载小程序开发者工具,选择创建 QuickStart 项目就可以开启你的第一个小程序项目啦。具体过程,请移步上面的文档地址。

一、简单介绍一下目录结构

当你快速创建了一个小程序的项目后,根目录有几个应用入口文件你是需要了解它们分别是做什么的。如:app.js、app.json、app.wxss、project.config.json
(一)app.js:设置一些项目的全局变量以及处理登录或者获取用户信息等。
(二)app.json:用来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。
(三)app.wxss:用来设置项目的一些全局样式。
(四)project.config.json:项目配置文件。
(五)项目中一个页面包含四个文件:index.wxml:页面结构;index.wxss:页面样式;index.json:页面配置文件;index.js页面逻辑层

二、制作一个简单的小项目

(一)创建目录结构
主页包括“首页”和”我的”两个模块,另外包括一个登录页。创建目录结构以及相关文件。如下图:


menu.png

(二)配置相关文件,准备相关图片或其他资源

{
  "pages":[
    "pages/main/main",
    "pages/login/login",
    "pages/index/index",
    "pages/logs/logs",
    "pages/userSetting/userSetting"
  ],
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "WeChat",
    "navigationBarTextStyle":"black"
  },
  "tabBar": {
    "color": "#999",
    "selectedColor": "#666",
    "backgroundColor": "#f4f4f4",
    "list": [
      {
        "pagePath": "pages/main/main",
        "text": "首页",
        "iconPath": "./images/tabbar/首页.png",
        "selectedIconPath": "./images/tabbar/首页.png"
      },
      {
        "pagePath": "pages/userSetting/userSetting",
        "text": "我的",
        "iconPath": "./images/tabbar/我的.png",
        "selectedIconPath": "./images/tabbar/我的.png"
      }
    ]
  }
}

在app.json文件的pages中添加main项,main放在第一条,即页面进入后首页即为首页。
PS:这里有个坑,pages数据索引为1的页面必须出现在tabBar的list中维护的选项,不然tabBar显示不出来。
将相关图片复制到images文件夹下:


images.png

(三)创建首页相关内容

main.xwml:
<!--main.wxml-->
<view class="main-container">
  <view class="swiper-title">
    <text>穿越时空的思念</text>
  </view>
  <swiper class="swiper-container" autoplay='true' interval='3000'>
    <swiper-item>
      <image class="swiper-image" mode="aspectFit" src='../../images/swiper/pic1.jpg' ></image>
    </swiper-item>
    <swiper-item>
      <image class="swiper-image" mode="aspectFit" src='../../images/swiper/pic2.jpg' ></image>
    </swiper-item>
    <swiper-item>
      <image class="swiper-image" mode="aspectFit" src='../../images/swiper/pic3.jpg' ></image>
    </swiper-item>
  </swiper>
  <view class="swiper-text">
    <text>简介:邪恶的奈落与犬夜叉一行的战争愈演愈烈,为了保护心脏不受伤害,他在白灵山分离出一个能洞察人类心灵的婴儿,并将心脏托其保管。在此之后,婴儿被某高僧砍作两半,变成白童子和赤子。当得知奈落心脏的重要性时,这两个同样邪恶的童子决定反客为主。赤子利用魍魉丸不断加固体外的甲胄,白童子和神乐则在与犬夜叉战斗的同时暗中与奈落展开对抗。犬夜叉、钢牙、杀生丸为了除掉奈落也不断提高各自的战斗力,双方的抗争终于接近高潮,宿命中的正邪决战在所难免……
    </text>
  </view>
</view>
main.wxss:
/**main.wxss**/
.swiper-container {
  width: 100%;
  height: 500rpx;
}

.swiper-title {
  margin-top:30rpx;
  text-align:center;
  color: #999;
}

.swiper-image {
  width: 100%;
  height: 500rpx;
}

.swiper-text {
  margin:0;
  padding:0 40rpx;
  color:#444;
  font-size: 0.8rem;
}
main.json:
{
  "navigationBarTitleText": "首页"
}
main.js:
//main.js
//获取应用实例
const app = getApp()

Page({
  data: {

  },

  //事件处理函数
  onLoad: function () {

  }
})

效果图如下:


main.jpg

PS:以上图片为轮播图,具体可以download项目代码去看。

(四)创建我的相关模块文件

userSetting.xwml:
<!--userSetting.wxml-->
<view class="user-setting-container">
  <view class="user-setting">
    <image class="user-avatar" src="../../images/login-pic.jpg" mode="aspectFit"></image>
    <button class="user-login-status" bindtap="login">登录/注册</button>
  </view>
</view>
userSetting.wxss:
/**userSetting.wxss**/
.user-setting {
  display: flex;
  align-items: center;
}
.user-avatar {
  width: 128rpx;
  height: 128rpx;
  margin: 30rpx;
  border-radius: 50%;
}

.user-login-status {
  margin-left: 20rpx;

}
userSetting.json
{
"navigationBarTitleText": "我的"
}
userSetting.js:
//userSetting.js
//获取应用实例
const app = getApp()

Page({
  data: {

  },

  //事件处理函数
  onLoad: function () {

  },
  login() {
    wx.navigateTo({
      url: "../../pages/login/login"
    })
  }
})

图片如下:


userSetting.jpg

(五)添加我的模块,点击登录/注册跳转到首页tab选项功能:
相关页面如下:

login.xwml:
<!--login.wxml-->
<!--login.wxml-->
<view class="container">
  <view class="login-info">
    <text class="user-nick-name">{{ nickName }}的App</text>
    <image class="user-avatar" src="../../images/login-pic.jpg" mode="aspectFit"></image>
    <view class="user-info">
      <view class="section">
        <form action="">
          <input class="user-phone-number"
                 type="number"
                 name="phoneNumber"
                 placeholder="请输入您的手机号码"
                 bindinput="phoneNumberInput"
                 placeholder-style="color: #999;"
                 focus/>
        </form>
      </view>
      <button class="login-btn" type="default" bindtap="turnToMain">登录</button>
    </view>
  </view>
</view>

PS:input标签为原生组件标签,在模拟器中需长按鼠标才可以输入内容。

login.wxss:
/**login.wxss**/
/**login.wxss**/
.login-info {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.user-avatar {
  width: 128rpx;
  height: 128rpx;
  margin: 30rpx;
  border-radius: 50%;
}

.user-nick-name {
  color: #999;
}

.user-phone-number {
  padding: 20rpx;
  margin: 30rpx 0;
  border: 1rpx solid #f8f8f8;
}

.login-btn {
  color: #999;
}

login.json:
{
  "navigationBarTitleText": "登录"
}
login.js:
//login.js
//获取应用实例
const app = getApp()

Page({
  data: {
    nickName: '犬夜叉',
    phoneNumber: ''
  },

  //事件处理函数
  onLoad: function () {

  },
  phoneNumberInput: function(e) {
    this.setData({
      phoneNumber: e.detail.value
    });
  },
  turnToMain() {
    wx.switchTab({
      url: '../../pages/main/main'
    })
  }
})

页面:


login.jpg

PS:设置字体时可直接用小程序的rpx单位。

相关文章

  • 小程序项目入门以及一些填坑日常

    在开启你的第一个小程序项目之前,你需要做一些准备工作,这是小程序的简易教程文档地址:https://develop...

  • iOS端IM开发从入门到填坑

    iOS端IM开发从入门到填坑 iOS端IM开发从入门到填坑

  • 【教程】微信小程序入门

    微信小程序入门基础知识 Moustache:我的微信小程序入门踩坑之旅 github精选:微信小程序入门简要教程 ...

  • 小程序项目之再填坑

    简诉 是的,真的,你没有看错,我就是上次那个加薪的,但是现在问题来了,最近又搞了个小程序的需求,又填了不少坑,其中...

  • 小程序填坑

    小程序的任何json文件都不要加任何注释信息 双花括号才能实现属性设置false的定义,否则失效 元素的显示和隐藏...

  • 小程序填坑

    小程序很火,开发看起来也很友好,但是真正开发过后就会发现,真的是坑很多。 组件的坑 在小程序中,组件分为原生组件和...

  • 小程序填坑

    小程序中的属性设置真vertical="true"假 vertical="{{false}}" 不要直接写 ver...

  • 小程序填坑

    在后台配置的请求域名https://easy-mock.com/,在实际中不能包含www,如https://www...

  • 新世纪福音战士·葛城美里

    日常填坑~

  • 晨间日记

    日常填坑

网友评论

      本文标题:小程序项目入门以及一些填坑日常

      本文链接:https://www.haomeiwen.com/subject/emkvwftx.html