前往小程序,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 删除。

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
打造“微信小程序”组件化开发框架
作者:龚澄--腾讯前端工程师 @IMWeb前端社区 导语 作为第一批小程序内测用户,我很有幸见证了小程序的成长,小程序上手十分简单,容易理解。但同时,因为运行环境的原因导致小程序无法使用市面上的流行框架。小程序本身提供一此特性如:模块化,模板,数据绑定等,能极大的方便了使用惯MVVM框架的用户。 在几个月的开发历程里,我一直希望能有一套方案更大可能的让小程序开发更贴近于当下开发习惯,因此才会有wepy。通过wepy开发的代码经过编译后,能生成一份完美运行在小程序端的代码,而且wepy的目的就是让小程序开发
用户1097444
2022/06/29
7690
打造“微信小程序”组件化开发框架
快速入门 WePY 小程序
WePY 是 腾讯 参考了Vue 等框架对原生小程序进行再次封装的框架,更贴近于 MVVM 架构模式, 并支持ES6/7的一些新特性。
王念博客
2019/07/25
2.1K1
微信小程序组件化开发框架WePY
版本init新生成的代码包会在根目录包含project.config.json文件
达达前端
2019/07/28
6450
wepy快速入门
wepy官网:https://tencent.github.io/wepy/index.html
达达前端
2022/04/29
1.4K0
wepy快速入门
手把手小程序开发【2-WePY之Hello World】】
上一节,由于篇幅冗长,小程序之Hello World也就没来得及尝试一番,这节我们就来实践下吧。
Lemon黄
2019/10/08
6040
手把手小程序开发【2-WePY之Hello World】】
emo——给项目配置prettier,eslint,husky加强协作规范
给自己的一个初始化项目配置一些规范; Prettier - Code formatter: Prettier - Code formatter ESLint: ESLint Git gitignore: https://git-scm.com/docs/gitignore#_pattern_format
思索
2024/08/15
1090
emo——给项目配置prettier,eslint,husky加强协作规范
微信小程序组件化开发框架WePY
compilers: compilers为1.3.1版本之后的功能,如果需要使用其它语法,请先配置compilers,然后再安装相应的compilers。目前支持wepy-compiler-less, wepy-compiler-postcss,wepy-compiler-sass、wepy-compiler-babel、wepy-compiler-pug,其他compiler持续开发中......
达达前端
2019/07/03
1.4K0
微信小程序组件化开发框架WePY
基于 Vue3、TypeScript、Vite2、Pinia 开源的后台管理框架
◆ 一、开源项目简介 Geeker Admin,基于 Vue3.2、TypeScript、Vite2、Pinia、Element-Plus 开源的一套后台管理框架。 ◆ 二、开源协议 使用0BSD开源协议 ◆ 三、界面展示 项目截图 1、登录页: 2、首页: 3、表格页: 4、数据大屏: ◆ 四、功能概述 项目功能 使用 Vue3.2 开发,单文件组件 <script setup> 采用 Vite2 作为项目开发、打包工具(配置了 Gzip 打包、TSX 语法、跨域代理、打包预览工具……)  
IT大咖说
2022/08/26
1.5K0
基于 Vue3、TypeScript、Vite2、Pinia 开源的后台管理框架
打造小程序组件化开发框架
Gcaufy
2017/05/09
6.8K3
打造小程序组件化开发框架
Vue-cli搭建完项目,各文件解释
脚手架vue-cli搭建完成后,会生成一些文件,总结学习一下这些文件是做什么用的: 1、一级目录: build和config文件夹是wbepack配置的文件夹; node_modules是在我npm install后存放一些依赖和插件的文件夹; src是存放我们项目源码的文件,通常我们的vue组件就写在这里,其中main.js是页面的入口文件,初始化vue实例并使用需要的插件【插件router、resource等】,而App.vue看作是一个大组件,也就是整个页面的vue实例文件; static是存放第三方
李文杨
2018/03/14
7650
小程序开发格式化代码ESLint、Prettier、husky、lint-stage
依赖 yarn init yarn add --dev babel-eslint@10.0.3 yarn add --dev eslint@6.7.1 yarn add --dev eslint-config-alloy@3.7.1 yarn add --dev eslint-config-prettier@6.10.0 yarn add --dev eslint-plugin-prettier@3.1.4 yarn add --dev prettier@2.0.5 yarn add --dev prett
kif
2023/02/27
2.5K0
微信小程序 WePY 引入WeUI
WeUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计,令用户的使用感知更加统一
hedeqiang
2019/12/17
2.4K0
打造“微信小程序”组件化开发框架
导语 Bugly 之前发了一篇关于微信小程序的开发经验分享,小伙伴们在公众账号后台问了很多关于小程序开发方面的问题,精神哥在查阅相关内容的时候,发现了龚澄同学自己写了一个小程序开发框架,真的怒赞,赶紧安利给大家。 同时,如果大家有关于小程序的相关问题,可以在评论区留言,我们整理一下,看看后续为大家出一篇关于大家开发的问题解答。 千万不要问小程序的入口在哪里,精神哥也不知道,哈哈哈 正文 作为第一批小程序内测用户,我很有幸见证了小程序的成长,小程序上手十分简单,容易理解。但同时,因为运行环境的原因导致小程
腾讯Bugly
2018/03/23
1.2K0
08Vue.js快速入门-Vue综合实战项目
8.1. 前置知识学习 npm 学习 官方文档 推荐资料 npm入门 npm介绍 需要了解的知识点 package.json 文件相关配置选项 npm 本地安装、全局安装、本地
老马
2018/01/05
1.4K0
【Vue工程】002-配置 eslnt 与 prettier
ESLint 是一个静态代码分析工具,用于检查 JavaScript 代码的语法结构和查找程序错误。
訾博ZiBo
2025/01/06
1200
微信小程序WePY开发框架简介
微信小程序入门门槛低、开发周期短、代码编写灵活、传播速度快等优点让微信小程序迅速火爆,开发者纷纷涌入,任何语言开发者一旦多了,就会有新的框架出来,WePY就是一个优秀的微信小程序开发框架。它让微信小程序的开发更加简单,功能更加强大,并且也优化了文件结构,熟悉了WePY之后确实可以让微信小程序开发更上一层楼。
大公爵
2018/12/05
2.4K0
微信小程序WePY开发框架简介
前端规范那些事
以上涉及到的rule规则在扩展包的基础上做了调整,基于两个规范做了修改适合你的规范规则
树酱
2020/07/03
1.2K0
前端规范那些事
认识WebStorm-小程序框架wepy
WebStorm是一个功能强大的IDE,适用于JavaScript开发,适合使用Node.js进行复杂的客户端开发和服务器端开发。
达达前端
2019/07/03
1.8K0
认识WebStorm-小程序框架wepy
wepy框架入门
使用微信开发者工具新建项目,本地开发选择dist目录。 微信开发者工具 --> 项目 --> 关闭ES6转ES5。 本地项目根目录运行wepy build --watch,开启实时编译。
达达前端
2019/07/03
6890
wepy框架入门
uni-app 最佳框架搭建实践
1: 将全局方法,全局变量放到一个文件里定义,并以global开头 然后在main.js里引入
拿我格子衫来
2022/01/24
8440
推荐阅读
相关推荐
打造“微信小程序”组件化开发框架
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档