Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >微信小程序框架与组件

微信小程序框架与组件

作者头像
达达前端
发布于 2019-07-03 04:36:11
发布于 2019-07-03 04:36:11
1.2K00
代码可运行
举报
文章被收录于专栏:达达前端达达前端
运行总次数:0
代码可运行

版权声明:未经博主允许不得转载

标题图

查看官方文档:https://developers.weixin.qq.com/miniprogram/dev/component/

前言:

学习微信小程序应该不怎么难吧~下面我来记录一下学习笔记,在学微信小程序的时候,如果你有html+css+javascript的基础,那么你就很快地上手掌握的。下面提供微信小程序官方地址:https://developers.weixin.qq.com/miniprogram/dev/framework/structure.html

下面一起学一学,微信小程序的框架吧~看文档,别学别理解。在下的讲述如果不正确的话,可以参考官方文档,也可以帮忙改正。具体还得看官方文档。

正文:

微信小程序的文件结构,有一个描述整体的app和描述多个页面的文件组合在一起的。给大家看一下打开微信小程序一般由什么:

示意图

一个文件项目中主体有

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
app.js 为小程序的逻辑代码
app.json 为小程序的公共设置
app.wxss 为小程序的样式

一个文件中如logs,index等,一般都有

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
xxx.js 页面逻辑代码如JavaScript
xxx.wxml 如html
xxx.wxss 如css样式
json 为该页面的配置

在app.json中的代码,我提供的代码是刚创建时的代码模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  //这部分为页面的路径
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
  ],
  //窗口表现
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "WeChat",
    "navigationBarTextStyle":"black"
  }
}

在文档中还提供了tabBarnetworkTimeout等。 tabBar

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"tabBar": {
    "list": [{
      "pagePath": "pages/index/index",
      "text": "首页"
    }, {
      "pagePath": "pages/logs/logs",
      "text": "日志"
    }]
  }

networkTimeout网络超时

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"networkTimeout": {
    "request": 10000,
    "downloadFile": 10000
  },

window的属性:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(navigationBar-BackgroundColor)
navigationBarBackgroundColor为导航栏的背景颜色
(navigationBar-TextStyle)
navigationBarTextStyle为导航栏标题颜色
仅支持 black/white
(navigationBar-TitleText)
navigationBarTitleText为导航栏标题文字内容
navigationStyle为导航栏样式
仅支持 default/custom
backgroundColor窗口的背景色
backgroundTextStyle下拉 loading 的样式,仅支持 dark/light

tabBar可以切换页面(最少2,最多5)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
color文字颜色
selectedColor文字选中时的颜色
backgroundColor背景色
borderStyle 仅支持 black/white
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
iconPath
selectedIconPath

networkTimeout设置各种网络请求

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wx.request
wx.connectSocket

xxx.json:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
navigationBarBackgroundColor
navigationBarTextStyle
navigationBarTitleText
backgroundColor
backgroundTextStyle
等

App() 用来注册小程序。生命周期函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
onLaunch
onShow
onHide
onError

object参数说明:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
data:初始数据
生命周期函数
onLoad
onReady
onShow
onHide
onUnload

组是视图的基本组成单元。 知识点: 数据绑定

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Page({
  data: {
    ...
  }
})

列表渲染:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<view wx:for="{{array}}"> {{item}} </view>

条件渲染 模板

示意图

示意图

示意图

数据绑定

{{ message }}

"{{flag ? true : false}}"

示意图

示意图

示意图

wx:for

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<view wx:for="{{array}}" wx:for-index="idx" wx:for-item="itemName">
  {{idx}}: {{itemName.message}}
</view>
//wx:for="{{[1, 2, 3]}}"
 <view> {{index}}: </view>
 <view> {{item}} </view>

提供两种文件引用方式importinclude

标识符

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
delete 
void 
typeof

null 
undefined 
NaN 
Infinity 
var

if 
else 

true 
false

require

this 
function 
arguments
return

for
while
do
break
continue
switch
case
default

数据类型

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1. number : 数值
toString
toLocaleString
valueOf
toFixed
2. string :字符串
3. boolean:布尔值
toString
valueOf
4. object:对象
5. function:函数
6. array : 数组
7. ate:日期
8. regexp:正则

选择器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
view::after 在 view 组件后边插入内容
view::before    在 view 组件前边插入内容

组件

view视图容器 scroll-view滚动视图 swiper滑块视图容器 movable-area可移动区域 movable-view可移动的视图容器 cover-view覆盖在原生组件之上的文本视图 cover-image覆盖在原生组件之上的图片视图 rich-text富文本 label用来改进表单组件的可用性 picker从底部弹起的滚动选择器 picker-view嵌入页面的滚动选择器 navigator页面链接 functional-page-navigator用于跳转到插件功能页 live-player实时音视频播放 live-pusher实时音视频录制

如果觉得不错,那就点个赞吧!❤️ 编辑 :达叔 我的目标是——每天不断更

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.07.13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
「小程序JAVA实战」 小程序手写属于自己的第一个demo(六)
自己尝试的写一个小demo,用到自定义样式,自定义底部导航,页面之间的跳转等小功能。 官方文档对于小程序开发来说要时刻打开https://developers.weixin.qq.com/minipr
IT架构圈
2018/12/17
9960
「小程序JAVA实战」 小程序手写属于自己的第一个demo(六)
微信小程序云开发基础知识扫盲篇(一)文档结构
这个是小程序的脚本代码文件,可以在这个文件上进行监听,并处理小程序的一些生命周期(比如一些全局变量)
用户3004405
2021/07/14
6790
微信小程序从零开始开发步骤(三)底部导航栏
上一章节,我们分享了如何创建一个新的页面和设置页面的标题,这一章我们来聊聊底部导航栏是如何实现的。即点击底部的导航,会实现不同对应页面之间的切换。 我们先来看个我们要实现的底部导航栏的效果图:(三个导
王小婷
2018/05/31
3.9K1
[猫头虎分享21天微信小程序基础入门教程]第2天:了解小程序的结构与文件配置
全局配置文件app.json中,可以定义小程序的页面文件路径、界面表现、网络超时时间、底部tab等。
猫头虎
2024/05/14
1490
[猫头虎分享21天微信小程序基础入门教程]第2天:了解小程序的结构与文件配置
小程序当中的文件类型,组织结构,配置,知识点等
在微信小程序中有四种文件类型,主要分样式,骨架,业务,配置,样式为wxss,这里的wxss与页面的css相类似,骨架为wxml,这里的wxml于页面的html相类似,业务逻辑都是以js为结尾,配置文件为json结尾。
达达前端
2019/07/03
7920
小程序当中的文件类型,组织结构,配置,知识点等
微信小程序-开发入门(一)
微信小程序已经火了一段时间了,之前一直也在关注,就这半年的发展来看,相对原生APP大部分公司还是不愿意将主营业务放到微信平台上,以免受制于腾讯,不过就小程序的应用场景(用完即走和二维码分发等)还是很值得我们学习的,技术上面如果了解React的话,会发现他们在组件化上面有很多雷同之处。说白了,小程序就是基于微信平台的H5轻应用,微信将系统底层功能(设备、位置、媒体、文件等)和微信自身功能(登录、支付、分享等)封装成相应API供小程序调用。 自己根据官方文档写过一个DOME,借助和风天气开放API接口,实现天气
小古哥
2018/03/08
2.6K2
微信小程序-开发入门(一)
【愚公系列】《微信小程序与云开发从入门到实践》005-小程序项目的基本结构
在当今移动互联网的迅猛发展中,小程序以其轻便、高效的特点,逐渐成为了吸引用户的重要工具。无论是电商、社交还是生活服务,各类小程序如雨后春笋般涌现,改变了我们与应用的交互方式。然而,很多开发者在初次接触小程序时,往往对其项目结构感到迷茫。了解小程序的基本结构不仅是开发的第一步,更是构建高效、可维护应用的基础。
愚公搬代码
2025/01/10
1390
微信小程序初步入坑指南
https://developers.weixin.qq.com/miniprogram/dev/devtools/beta.html
mySoul
2018/08/27
1.2K0
微信小程序基于最新版1.0开发者工具分享-小试牛刀(视频)+发布流程
第一章:小程序初级入门教程 小试牛刀【含视频】 视频地址:https://v.qq.com/x/page/i0554akzobq.html 这一章节中,我们尝试着写一个最简单的例子,包含 2 个静态
iKcamp
2018/01/04
1.2K0
微信小程序基于最新版1.0开发者工具分享-小试牛刀(视频)+发布流程
微信小程序开发(全局配置文件)
微信小程序中全局配置文件指:app.json文件,该文件通过微信开发者工具新建项目后会自动生成,无需自己手动创建。
全栈开发日记
2022/05/13
9990
微信小程序开发(全局配置文件)
微信小程序个人心得「建议收藏」
官方给出了app.json五个配置项列表.(pages(Array), window(Object), tabBar(Object), networkTimeout(Object), debug(Boolean)),接着我们就详细的分下一下这几个配置项.
全栈程序员站长
2022/11/04
1.9K0
微信小程序个人心得「建议收藏」
小程序 Tip | 基础概述
每个子目录中保存着一个页面的相关文件 —— 通常是4种不同扩展名的文件, 分别是页面中的逻辑文件、页面结构文件、样式表文件、配置文件; 为了减少开发时的配置项,框架特别约定描述页面的这4个文件必须具备相同的路径和文件名;
凌川江雪
2022/01/20
9530
小程序 Tip | 基础概述
小程序(2)- 基础样例
基本这些配置就可以满足正常的开发,其他有一些比如request请求超时之类的,都采用默认即可
小尘哥
2018/08/15
5840
小程序(2)- 基础样例
新手开发 微信小程序 跳转失效问题
非tabBar.list,页面中跳转用wx.redirectTo 或者 wx.navigateTo
用户2596882
2024/05/08
1500
小程序快速入门教程 1.1 小程序开发入门
结合刚创建的 DEMO,大致了解下小程序的文件结构和页面组成,详细的内容可以查看 小程序代码构成。
twowinter
2020/04/17
1.1K0
小程序快速入门教程 1.1 小程序开发入门
微信小程序底部导航栏实现
上一章节,我们分享了如何创建一个新的页面和设置页面的标题,这一章我们来聊聊底部导航栏是如何实现的。即点击底部的导航,会实现不同对应页面之间的切换。
王小婷
2020/09/27
15.5K0
3-了解.json文件
它的作用是配置小程序的页面,这个配置项是必填的,它接受一个数组,里面的每一项都是字符串,从上面给出的代码:
py3study
2020/01/10
8240
微信小程序入门《四》实例:导航栏样式、tabBar导航栏
实例内容 导航栏样式设置 tabBar导航栏 实例一:导航栏样式设置 小程序的导航栏样式在app.json中定义。 这里设置导航,背景黑色,文字白色,文字内容测试小程序 app.json内容: { "pages":[ "pages/index/index", "pages/login/login", "pages/logs/logs" ], "window":{ "backgroundTextStyle":"red", "navigationBarBack
极乐君
2018/02/05
3.2K0
微信小程序入门《四》实例:导航栏样式、tabBar导航栏
微信小程序,开发大起底
作者简介:张智超,北京微函工坊开发工程师,CSDN微信开发知识库特邀编辑。微信小程序爱好者。 感谢@翟东平 @qq_31383345 @nigelyq 等热情参与和共建 责编:CSDN知识图谱小助手 「小程序」是什么 张小龙在朋友圈里这样解释道:小程序是一种不需要下载安装即可使用的应用,它实现了应用「触手可及」的梦想,用户扫一扫或搜一下即可打开应用。也体现了「用完即走」的理念,用户不用关心是否安装太多应用的问题。应用将无处不在,随时可用,但又无需安装卸载。 微信小程序是一种全新的连接用户与服务的方式,它可以
智能算法
2018/04/03
1.6K0
微信小程序,开发大起底
小程序版博客——整体框架搭建
在开发前,还是要稍微想下到底需要哪些功能,哪些页面,尽量有一些计划性(这对所有着手做的事都是一个道理)。
Bug生活2048
2018/08/31
9360
小程序版博客——整体框架搭建
推荐阅读
相关推荐
「小程序JAVA实战」 小程序手写属于自己的第一个demo(六)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验