微信小程序开发具体步骤及所需的文件结构

核心提示今天开始,我们下载一个微信的demo来了解下微信小程序的结构。我们知道小程序是javascript编写的语言脚本;JS主要是用来做交互,比如:响应用户的点击、获取用户的位置等等。通过编写 JS 脚本文件来处理用户的操作。简单来说,WXML决

今天下载一个微信的demo,了解一下微信小程序的结构。

我们知道小程序是javascript编写的语言脚本;JS主要用于交互,比如响应用户的点击,获取用户的位置等等。通过编写JS脚本文件来处理用户的操作。

简单来说,WXML决定了那里有什么内容,WXSS决定了内容的样子,JS决定了页面和用户操作的交互。体验好不好就看JS了。

一个小程序文件夹的根目录一般有几个重要的文件。今天主要详细介绍这三个文件:app.jsapp.json和app.wXSS。

首先,我们来看看app.js

App.js作为项目的入口文件,用来创建应用对象。

以下是全局函数app中的结构:

全局数据对象,请注意各种数据组之间用逗号分隔,所有数据都是冒号和花括号的形式;

全局数据:{

routineStyle:'#ffffff ',

uid: null,

openid:' ',

打开的页面:'',

spid:0,

urlImages:“”

},

全局方法,方法1{...},

setBarColor:函数{

var that = this

wx.setNavigationBarColor

},

生命周期方法;

启动时触发{.....}一旦应用程序启动,

当应用程序显示在前台时:onShow{},

在小程序中,如果要调用公共app js方法,可以在子页面实例化app如var app = getApp

//App function是用来创建应用对象的全局函数。

App{...},

methid1 {...},

//= = = = =生命周期方法= = = = =

//应用程序启动时触发一次

onLaunch{...},

//当应用程序进入前台显示状态时触发

昂秀{...},

//当应用程序进入后台状态时触发

正面{...}

})

# # # # # applet-调用公共js对象方法/app.js

# # #在小程序中,如果要在子页面上调用共工js的方法,需要先在子页面js中实例化app:具体流程如下:子页面js:

//调用公共js对象以调用其方法

var app = getApp//获取应用程序实例

//console.log//可以查看public js的方法

Page//调用public appjs的方法

}

})

我们使用app.json文件对微信小程序进行全局配置,确定页面文件的路径,窗口性能,设置网络超时,设置多个标签页等。

以下是带有所有配置选项的简单配置app.json:

{

"页数":[

"页数/索引/索引",

"页面/日志/索引"

],

"窗口":{

" navigationBarTitleText ":"演示"

},

" tabBar": {

"列表":[{

" pagePath ":"页面/索引/索引",

"文本":"主页"

}, {

"页面路径":"页面/日志/日志",

"文本":"日志"

}]

},

"网络超时":{

【要求】:10000个,

【下载文件】:10000

},

“调试”:真

}

现在我们来逐一分析一下配置项;

我们先来看页数。

他的类型是:字符串数组。他的作用是配置页面路径,这是配置中的必选项;

接受一个数组,每一项都是一个字符串,指定applet由哪些页面组成。每一项代表相应页面的[路径+文件名]信息,

这里应该指出的是:

First:数组的第一项代表applet的初始页面。在applet中添加/减少页面时,需要修改页面数组。

第二,文件名不需要写文件后缀,因为框架会自动找到四个带路径的文件。json,。js,。wxml和。用于集成的wxss。

如果开发目录是:

页数/

pages/index/index.wxml

页面/索引/索引. js

pages/index/index.wxss

pages/logs/logs.wxml

页面/日志/logs.js

app.js

app.json

app.wxss

然后,我们需要在app.json中编写

{

"页数":[

"页数/索引/索引"

"页面/日志/日志"

]

}

窗户

用于设置小程序的状态栏、导航栏、标题和窗口背景颜色。,如“#ff00ff”)

NavigationBarbackGrouncolor hex color # 000000导航栏背景色。

导航栏文本样式字符串白色导航栏标题颜色只支持两种设置:黑/白。

NavigationBarTitleText字符串导航栏标题文本内容

背景颜色hexcolor $ffffff窗口背景颜色

BackgroudTextStyle字符串深色下拉背景字体,加载图的样式,只支持深色/浅色。

启用下拉刷新boolean false是否启用下拉刷新可以在页面上相关事件的处理程序中找到。

注意:navigationStyle打开自定义后只在app.json中起作用,低版本客户端需要兼容。将开发者的基础库版本切割到1.7.0,可以轻松切割到老版本。

标签栏

如果我们的applet是一个多标签应用程序,那么我们可以指定标签栏的性能,以及通过标签栏配置项切换标签时显示的相应页面。

友情提醒:即使在tabBar配置中定义了通过页面跳转或页面重定向到达的页面,底部的tab bar也不会显示。

TabBar是一个数组,只能配置最少2个最多5个选项卡。选项卡按数组的顺序排序。

属性描述:

属性:颜色类型hexColor必需项选项卡上文本的默认颜色

attribute:selected color type hexColor必选项目:选中时选项卡上文本的颜色。

属性:backgroundColor类型hexColor必需选项卡背景色

属性:不需要borderStyle类型字符串。默认值是黑色tabbar上边框的颜色。仅支持黑色/白色。

属性:列表类型:数组的必需页签列表,最少2个,最多5个。

按数组的顺序排序

属性:位置类型:字符串不是必需的。默认值为bottom。可选值:底部和顶部

的属性列表可以接收一个数组,数组中的每一项都是一个对象,其属性值为:

PagePath:必须首先在pages中定义页面路径。

文本:选项卡按钮上的文本

IconPath:图像路径。图标大小限制在40kb,最佳大小为81像素*81像素。

SelectedIconPath:选中时的图像路径。图标大小限制在40kb,最佳大小为81像素*81像素。

注:1。当位置设置为顶部时,图标2将不显示。tabBar中的列表是一个数组,只能配置最少2个选项卡,最多5个选项卡。选项卡按数组顺序排序。

网络超时

您可以设置各种网络请求的超时时间。

属性:不需要请求类型编号。wx.request的超时值,以毫秒60000为单位。

属性:连接套接字类型号不是必需的wx。connectsocket的超时,以毫秒60000为单位。

属性:上传文件类型号不是必需的。wx.uploadFile的超时,以毫秒60000为单位。

属性:不需要下载文件类型号。downloadfile的超时,以毫秒60000为单位。

调试可以在开发工具中启动调试模式。在开发者工具的控制台面板中,调试信息已经以info的形式给出,其信息包括页面注册、页面路由、数据更新和事件触发。可以帮助开发者快速定位一些常见问题。

App.wxss是微信中的一种风格。

全球风格和地方风格

将app.wxss中的样式定义为全局样式,作用于每个页面。页面的wxss文件中定义的样式是一个局部样式,它只在相应的页面上起作用,并将覆盖app.wxss中的同一个选择器

首先,我们先了解一下wxss是什么。WXSS是一组用于描述WXML组件样式的样式语言。

WXSS用于确定应该如何显示WXML的组件。

为了适应广大前端开发者,WXSS拥有CSS的大部分特性。同时,为了更适合开发微信小程序,WXSS对CSS进行了扩展和修改。

与CSS相比,WXSS扩展的特点是:

尺寸单位;风格导入。

首先来看尺寸单位rpx,可以根据屏幕宽度进行适配。指定的屏幕宽度为750rpx。比如iPhone6上,屏幕宽度为375px,有750个物理像素,那么750rpx = 375px = 750个物理像素,1rpx = 0.5px = 1个物理像素。

建议:设计师在开发微信小程序时,可以用iPhone6作为视觉稿的标准。

注意:小一点的屏幕难免会有一些毛边。开发时请尽量避免这种情况。

我们来看看风格导入。

使用@import语句导入外部样式表。@import后面是要导入的外部样式表的相对路径,而

;指示语句的结束。

。小p {

填充:5px

}

@导入“common . wxss”;

。中间p {

填充:15px

}

内嵌样式

在框架上,支持样式和类属性来控制组件的样式。

样式:静态样式是在类中编写的。样式接收动态样式,这些样式将在运行时被解析。请尽量避免将静态样式写入样式,以免影响渲染速度。

类:用于指定样式规则。它的属性值是样式规则中类选择器名称的集合。样式类名不需要用。样式类名由空分隔。

选择器

当前支持的选择器有:

选择器样本样本描述

。class.intro选择所有拥有的组件。

#id#firstname选择id="firstname "的组件

Elementview选择所有视图组件。

元素,元素视图,复选框选择所有文档的视图组件和所有复选框组件。

* after view::after在视图组件后插入内容。

* before view::before在视图组件前面插入内容。

今天到此为止。明天,我们将把这些属性放到一个例子中来实际观察一下。请继续关注:

 
友情链接
鄂ICP备19019357号-22