How much do you know about mini program development specifications?

王林
Release: 2020-12-18 09:33:47
forward
2545 people have browsed it

How much do you know about mini program development specifications?

Small program development specifications:

(Learning video sharing: Programming video)

1. Directory overview

Component files

All component-related files are placed in the components directory.

Image files

The project image files are placed in the images folder of the root directory, and the unique images of the component are placed in the current component images directory

Model files

Model files are mainly used to write various business models. The project model file is placed in the models folder in the root directory, and the component-related models are placed in the models folder in the components directory.

Behavior file

The behavior file is placed in the directory of the referenced component.

WXML Specification

1. WXML Specification

If the wxml tag can appear alone, try to appear alone, such as <input />.

<input />
Copy after login

Control the number of codes in each line of HTML to within 50 characters to facilitate reading and browsing. The redundant code will be line-wrapped, and the attributes of the tag will be line-wrapped.

<v-music
wx:if="{{classic.type===200}}"
img="{{classic.img}}"
content="{{classic.content}}"
>
</v-music>
Copy after login

Display separated content appropriately and do not use inline styles.

//推荐使用
<image class="tag"></image>
Copy after login

2. Comment specifications

Except for components, other block-level elements must comment out their functions, and leave a line above and below them to distinguish them from other codes.

<view>...</view>
//导航栏
<view>...</view>
<view>...</view>
Copy after login

CSS specification

1. CSS specification

Both rpx and px may be used during the development process. For example, usually rpx is used for spacing, font size and border, etc. Using px, developers decide according to the actual situation.

width: 100rpx;
font-size: 14px;
Copy after login

CSS code must have obvious code indentation. Leave one line empty between each style class.

.v-tag{
width: 100%;
}
.v-container{
width: 100%;
}
Copy after login

Try to use abbreviated attributes, and place the same attributes together to avoid clutter.

/**使用简写属性**/
.v-image{
margin: 0 auto;
}
/**同一属性放在一块**/
.v-tag{
margin-left: 10rpx;
margin-right: 10rpx
}
Copy after login

Use flex for layout, and float and vertical-align are prohibited.

.container{
disaplay: flex;
flex-dirextion: row
}
Copy after login

2. Comment specifications

Use block comments between groups of wxss rules. Do not comment directly after the code.

/** 修改button默认的点击态样式类**/
.button-hover {
background-color: red;
}
Copy after login

JS specification

1. JS specification

Naming specification

Variable names and function names uniformly use camel case naming. Under normal circumstances, the function name is prefixed A clear verb should be added to indicate the function function, and private functions or properties should be indicated by starting with an underscore. Constants need to be declared with const.

The first letter of the class name must be capitalized.

Use the ES6 keyword let to define variables, try not to use var

//定义常量
const a = 1
//定义变量
let imageContent =  res.data
//函数命名
getInfo:function(){
return &#39;&#39;;
}
//私有函数
_getInfo:function(){
return &#39;&#39;;
}
Copy after login

Callback function specifications

The callback functions are uniformly written using the Promise function, and the parameters for successful callbacks are unified is res, and the error parameter is err.

// promise 处理回调
let back = new Promise((resolve, reject) => {
if (/* 异步操作成功 */){
resolve(value);
} else {
reject(error);
}
});
back.then((res) => {
console.log(&#39;成功回调!&#39;, res);
}).catch((err) => {
console.log(&#39;失败回调!&#39;, error);
});
Copy after login

Private functions and callback functions are placed after the life cycle function.

Delete unused life cycle functions in js files to keep the code clean.

Pages({
data:{
},
onLoad:function(event){
},
_self:function(){
}
})
Copy after login

Separate structures with a blank line between each function.

Data binding variable definition specifications

All variables involved in data binding must be initialized in data. It is forbidden to setData directly without defining it.

Pages({
data:{
id : null
},
onLoad:function(event){
let id = event.target.dataset.id
this.data.id = id
}
})
Copy after login

Click event specification

The naming method of the click event function is on event name or business name.

onLike: function(event){
}
Copy after login

Component specification

Component name naming specification

When the component is used, the component name starts with "v-". If the component name is a splicing of multiple word names It is formed by using '-' connection. It is recommended to use a single closed tag when component tags are used on page pages (this constraint is not valid for components containing slots)

<v-movies />
Copy after login

Trigger event specifications

It is recommended that component click trigger events be separated by colons

Automatic detection

<v-component-tag-name bind:myevent="onMyEvent" />
Copy after login

externalClasses naming convention

The naming format adopts the following form: v-class-{name}, name can be defined by yourself

v-class-icon
Copy after login

Component Style specification

All component styles produced by the team should be written in class, and the name must start with v-. Inline styles and id styles are not allowed

.v-container{
disaplay: flex;
flex-dirextion: row
}
Copy after login

Punctuation specification

JS statements do not need to end with a semicolon, and the semicolon is always omitted

In JS, backticks `` or single quotes ' ' are always used, and double quotes are not used.

Double quotes should be used in WXML, CSS, and JSON.

The colon in the CSS attribute is separated by a space.

Perform consistent indentation (4 spaces)

Perform consistent newline style ('unix'),

Related recommendations: 小program development tutorial

The above is the detailed content of How much do you know about mini program development specifications?. For more information, please follow other related articles on the PHP Chinese website!

source:石墨文档
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!