微信小程序的主要文件介绍:

. js:脚本文件

.json:配置文件

.wxss:样式表文件

.wxml:页面

微信小程序差不多也是和mvc模式差不多的,采用数据和页面分离的模式,在js上写的数据可以放到wxml上面

1.在一个js文件上引用其他js文件上的代码:
要引用的js文件:
 const formatTime = date => {
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
const hour = date.getHours()
const minute = date.getMinutes()
const second = date.getSeconds() return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
} const formatNumber = n => {
n = n.toString()
return n[1] ? n : '0' + n
} module.exports = {
formatTime: formatTime
}

引用:

 //logs.js
const util = require('../../utils/util.js') Page({
data: {
logs: []
},
onLoad: function () {
this.setData({
logs: (wx.getStorageSync('logs') || []).map(log => {
return util.formatTime(new Date(log))
// return '我是时间'
})
})
}
})

-----------------------------------------------------------------------

调用app.js里面的globalData()的数据:

globalData: {  userInfo: null,  time:'2017-9-22' }

调用:

var data = getApp();

 onLoad: function (options) {
console.log(data.globalData.time);
},

---------------------------------------------------------------------

调用app.js里面的方法:

  getUserName: function(){
return '我是函数';
} ,
globalData: {
userInfo: null,
time:'2017-9-22'
}

调用:

    this.setData({
username: data.getUserName()
})

跟Java的数据,方法调用差不多。

微信小程序的结构:

小程序的周期:

demo:

温馨提示:代码的末尾千万不要加上;不然会报错!!!还有,没有任何代码的文件也会报错!!!

在页面的json里面,我们直接写配置就行了,不用写window,这是和app.json(全局)的区别

页面结构:

背景那里需要开启下来刷新才能看到。

逻辑层:

app.js是控制整个小程序的生命周期

其他的 index.js是控制页面的生命周期

微信小程序的生命周期:

onLaunch:小程序初始化

onShow:小程序显示

onHide:小程序隐藏

onError:小程序出错

 any:其他

页面的生命周期:

data:页面数据

onLoad:监听页面加载

onReady:页面加载成功

onShow:页面显示

onHide:页面隐藏

onPullDownRefresh:监听页面下来动作

onReachBottom:页面上拉触底

onShareAppMessage:用户点击由上角分享

Any:其他函数 

wxml:

- rpx(规定屏幕宽度为750rpx,1rpx=1物理像素)(换算:750/当前宽度 = 比率)

- 样式引入(@import ,“相对路径”)

-选择器的部分支持(.class ,  #id , element (标签), ::before(第一个) , ::after(最后一个))

flex:

注意:

当flex为横向的时候,他的猪轴就是为x轴,当他为纵向的时候,他的住轴为y轴,相对的就是交叉轴(x,y);

对齐:justify-content(x)和align-items(y)仅仅对自己有效,不对子级发生效果!!!

注意!容器(如:view)的属性只能用容器上的,项目(如:text)上的属性只能用项目上的。

循环:

条件循环:

<view wx:if="{{age<80}}">
小于
</view>
<view wx:elif="{{age==80}}">
等于
</view>
<view wx:else="{{age>80}}">
大于
</view>

  for循环:

<view wx:for="{{data}}">
{{index}}
姓名:{{item.name}}
,年龄:{{item.age}}
</view>
  data: {
name: app.globalData.quan,
age:,
data:[
{name:'小明',age:''},
{ name: '小红', age: '' },
{ name: '小黄', age: '' },
{ name: '小良', age: '' },
{ name: '小黑', age: '' }
]
},

或者:

<view wx:for="{{data}}" wx:for-item="v" wx:for-index="a">
{{a}}
姓名:{{v.name}}
,年龄:{{v.age}}
</view>

微信小程序入门(持续更新)的更多相关文章

  1. 天河微信小程序入门《四》:融会贯通,form表单提交数据库

    天河在阔别了十几天之后终于又回来了.其实这篇文章里的demo是接着(天河微信小程序入门<三>)后面就做了的,但是因为最近在做别的项目,所以就偷懒没有发出来.放到今天来看,从前台提交数据到数 ...

  2. 微信小程序入门正确姿势(一)

    [未经作者本人同意,请勿以任何形式转载] >>>前言 这是 [认真学编程] 系列的 第4篇 文章(微信小程序入门系列),欢迎点赞分享.写留言,这些都是对我最好的支持. 本系列适合有一 ...

  3. 微信小程序入门篇

    微信小程序入门篇: 准备工作 IDE搭建 就不多说了,没有内测码去下载个破解版吧,我用了一下,学习完全够了!IDE破解版+安装教程 图片发自简书App 知识准备 JavaScrip还是要看看的,推荐教 ...

  4. 从零开始的微信小程序入门教程(一)

    之前说要和同事一起开发个微信小程序项目,现在也在界面设计,功能定位等需求上开始实施了.所以在还未正式写项目前,打算在空闲时间学习下小程序.本意是在学习过程中结合实践整理出一个较为入门且不是很厚的教程, ...

  5. 天河微信小程序入门《三》:打通任督二脉,前后台互通

    原文链接:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=505&extra=page%3D1 天河君在申请到https ...

  6. 天河微信小程序入门:阿里云tomcat免费配置https

    天河君在第一时间通过了微信小程序验证,开启了我的微信小程序之旅.因为天河君之前是一名后端狗,对前端不是很了解,所以几乎可以认为是从零开始学做微信小程序.也希望有志在微信小程序方向做点事情的朋友能够和我 ...

  7. 我的微信小程序入门踩坑之旅

    前言 更好的阅读体验请:我的微信小程序入门踩坑之旅 小程序出来也有一段日子了,刚出来时也留意了一下.不过赶上生病,加上公司里也有别的事,主要是自己犯懒,就一直没做.这星期一,赶紧趁着这股热乎劲,也不是 ...

  8. 微信小程序入门案例

    本文通过具体的实例记录微信小程序的入门知识. 1.特点 不需要安装 依赖微信应用 更接近原生APP 丰富的框架及API可达到快速开发的目的 2.工具使用 在开发的过程中可以使用微信开发者工具,更加直观 ...

  9. 微信小程序入门与实战 常用组件API开发技巧项目实战*全

    第1章 什么是微信小程序? 第2章 小程序环境搭建与开发工具介绍 第3章 从一个简单的“欢迎“页面开始小程序之旅 第4章 第二个页面:新闻阅读列表 第5章 小程序的模板化与模块化 第6章 构建新闻详情 ...

  10. 微信小程序入门与实战 从0到1进行细致讲解 涵盖小程序开发核心技能下载

    第1章 什么是微信小程序? 第2章 小程序环境搭建与开发工具介绍 第3章 从一个简单的“欢迎“页面开始小程序之旅 第4章 第二个页面:新闻阅读列表 第5章 小程序的模板化与模块化 第6章 构建新闻详情 ...

随机推荐

  1. SQL Server Profiler常用功能

    最近因调研Linq to object 和Linq to Entity的数据组合查询问题,需要用到Sql Server Profiler检测在数据上执行的语句,在调试sql语句时,给了很大的帮助. 这 ...

  2. 相见恨晚的 Git 命令动画演示,一看就懂!

    虽然 Git 是一个强大的工具,但是我觉得大部分人都会同意我说的:它也可以是一个--噩梦!我一直觉得,使用 Git 的时候把操作过程在脑海里视觉化会非常有用:当我执行某个命令的时候,分支之间是如何交互 ...

  3. Mysql数据库下载以及安装(至安装成功cmd可访问)

    主要整理了一下Mysql安装的过程 安装的具体步骤见: https://blog.csdn.net/weixin_43465312/article/details/89897580?ops_reque ...

  4. php--phpstudy更新数据库版本后,无法一键启动

    只需输入以下命令即可: sc delete mysql

  5. go 接口与动态类型

    Go 没有类:数据(结构体或更一般的类型)和方法是一种松耦合的正交关系. 二.动态方法调用 通常需要编译器静态检查的支持:当变量被赋值给一个接口类型的变量时,编译器会检查其是否实现了该接口的所有函数.

  6. 2018蓝桥杯省赛(C/C++ C组)

    因进考场不让带优盘,顾想不起有些啥题了,静待更新吧! 再次强调C++最新标准,main函数必须指定返回类型为int,且返回值最好为0(人走的多了就是路了,有人偏返回999那也没办法) 1.大概是小明给 ...

  7. 安卓开发学习日记 DAY3——TextView,EditView,ImageView

    今天学习了一些控件的使用方法,包括TextView,EditView,ImageView 1.TextView,输出一个文本呗 主要属性有 android:id 标志 android:layout_w ...

  8. 这可能是 Github 上最全面的 Flutter 教程

    引语 晚上好,我是猫咪,我的公众号「程序媛猫咪」会推荐 GitHub 上好玩的项目,挖掘开源的价值,欢迎关注我. 刚下班到家,金三银四,虽然今天行情尤其地不好,但身边的同事也是走了一波,不免会受到影响 ...

  9. 30.2 案例:ArrayList本身数据可以重复,写出去重的方法

    package day30_HashSet; /* * ArrayList特点(实现List接口) 有序.可以重复.可以使用索引 *使用ArrayList实现数据去重 * */ import java ...

  10. scala_spark实践2

    参考:jianshu.com/p/9d2d225c1951 监听socket获取数据,代码如下:这里使用nc -lk 9999 在ip为10.121.33.44的机器上发送消息 object Sock ...