search
HomeWeChat AppletMini Program DevelopmentA small and beautiful mini program scaffolding that allows you to develop mini programs more smoothly and quickly

Today I recommend to you a small program development scaffolding developed by myself. It has been used for nearly a year and is relatively stable. It will continue to be updated in the future. Welcome to use it and star.

Compared to the current Among the various cross-end solutions on the market, this development process is purer, does not introduce any new development difficulties, and completely improves development efficiency based on native mini programs~

pandora-boierpalte -wechat is a small and beautiful WeChat mini program development scaffolding. We have not introduced any new complexity and have 100% ability to use mini programs, but we have supplemented the mini program developer tools compared to normal The shortcomings of web development make it easier for you to develop WeChat applets.

We support the following enhanced capabilities:

  • Less pre-compiled writing style, automatically converted to wxss

  • Automatically introduce async/ await dependency

  • dev/test/pre/prod multi-environment configuration

  • npm dependency, use npm package like a normal web project, the rest Just leave it to the scaffolding

  • Module alias, no longer need to use relative paths to introduce js modules

  • icon font font file, small The icon uses the font file directly. We can go to the IconFont site to download the svg file we like.

  • We have integrated the vant-weapp## provided by Youzan by default. # Come to the mini program component library, just pa i we can install the required components and their dependencies into the project

  • Sample File creation

  • and its convenient CICD capabilities, pa release one-click deployment to the mini program control background, more semantic version number management

We recommend using

pandora-cli to develop WeChat mini programs.

Less Use


In fact, there is no need to say more about this. Just create a less file and replace the wxss file.

Automatically introduce async/await dependencies


The scaffolding construction script will automatically analyze whether the async and await keywords are used in the code. If so, The third-party libraries it depends on will be automatically introduced into the final build code, so you can use async/await syntax with confidence.

Multiple environment configuration


After the mini program project is initialized, you can configure multiple environments in config/app.yaml. The posture is as follows:

The configuration content of app.yaml is as follows:

    appId: 'wxxxxxxxxx'
    appName: 'test-pandora'
    version: '1.0.0'
    development:
      env: 'development'
      host: 'https://api.dev.com'
    test:
      env: 'test'
      host: 'https://api.test.com'
    preproduction:
      env: 'preproduction'
      host: 'https://api.pre.com'
    production:
      env: 'production'
      host: 'https://api.prod.com'

After the project is started, that is, after pa start, automatic compilation will be triggered every time the app.yaml file is updated and modified

In the js file that needs to be used, use the following method to introduce it

    import config from 'config'

The config object is the configuration file we built through different environments

For example, after pa start starts, we get the configuration The object is as follows:

{
    appId: 'wxxxxxxxxx',
    appName: 'test-pandora',
    version: '1.0.0',
    env: 'development',
    host: 'https://api.dev.com'
}

Use pa build --env test, and the configuration object obtained is as follows:

{   
 
    appId: 'wxxxxxxxxx',
 
    appName: 'test-pandora',
    version: '1.0.0',
    env: 'test',
    host: 'https://api.test.com'
}

npm dependency

This scaffolding is not built using the npm official provided by the mini program Ability, the reasons are as follows:

  • pandora-boilerpalte-wechat When developing scaffolding, npm is not officially supported

  • The official npm ability requires the node_modules directory to be located The root directory of the mini program conflicts with the directory convention of the current scaffolding, and is also different from the normal web project structure

Based on the above reasons, we decided to continue to use the npm dependency processing provided by ourselves Mechanism, the company's project has been running for nearly a year and has not encountered any problems yet.

You can use the following method to install the npm package, in the project root directory:

pa i <pkg> --npm



或者



npm i <pkg>

Both of the above two methods can install the latest version of the corresponding pkg into the project node_modules

Component library


We have integrated the vant-weapp applet component library of Youzan open source. When using it, you only need to install the components you need through the pa command. We All required dependencies will be automatically installed, and then you can use them according to the usage posture of the mini program custom components, maximizing the development efficiency of the mini program.

For example, we want to install the dialog component

pa i dialog

This command will automatically install only the dialog component and its dependencies from the vant-weapp library into the project src/compnents.

Module alias


is configured in the build.config.js file in the project update directory. We can configure aliases for the directories in the project and use the alias references in the source code.

icon font support


Go to Alibaba IconFont official website to download your favorite icon SVG file to the project root directory icons. The build will automatically generate the font file and include it Connect it to the project and use it as follows.

There are the following files in the icons directory

wechat.svg

In the wxml file, you can add the following class class to the corresponding tag

<text class="icon-font icon-font_wechat"></text>

where icon -font is required. The second type consists of icon-font_

Of course we can add other styles to this element

样板文件创建

创建组件

pa c component demo

或者 

pa create component demo

创建好的文件会自动位于项目 src/components 中

创建页面

pa c page demo

或者 

pa create page demo

创建好的文件为自动位于项目 src/pages 中

CICD支持

在项目根目录下执行以下命令可以自动发布项目到小程序后台

pa release <version-type> -m &#39;<comments>&#39;

其中 version-type 为 major, minor, patch 可以参考 npm version 语义化版本

comments 为此次发布的描述,必填。

这里需要注意的是,pa release 使用的是小程序开发者工具的 HTTP 接口,所以务必保证小程序开发者工具启动,并且  设置 -> 安全 -> 安全(服务端口)开启

推荐教程:《微信小程序

The above is the detailed content of A small and beautiful mini program scaffolding that allows you to develop mini programs more smoothly and quickly. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:掘金社区. If there is any infringement, please contact admin@php.cn delete
微信小程序架构原理基础详解微信小程序架构原理基础详解Oct 11, 2022 pm 02:13 PM

本篇文章给大家带来了关于微信小程序的相关问题,其中主要介绍了关于基础架构原理的相关内容,其中包括了宿主环境、执行环境、小程序整体架构、运行机制、更新机制、数据通信机制等等内容,下面一起来看一下,希望对大家有帮助。

微信小程序云服务配置详解微信小程序云服务配置详解May 27, 2022 am 11:53 AM

本篇文章给大家带来了关于微信小程序的相关知识,其中主要介绍了关于云服务的配置详解,包括了创建使用云开发项目、搭建云环境、测试云服务等等内容,下面一起来看一下,希望对大家有帮助。

微信小程序常用API(总结分享)微信小程序常用API(总结分享)Dec 01, 2022 pm 04:08 PM

本篇文章给大家带来了关于微信小程序的相关知识,其中主要总结了一些常用的API,下面一起来看一下,希望对大家有帮助。

浅析微信小程序中自定义组件的方法浅析微信小程序中自定义组件的方法Mar 25, 2022 am 11:33 AM

微信小程序中怎么自定义组件?下面本篇文章给大家介绍一下微信小程序中自定义组件的方法,希望对大家有所帮助!

微信小程序实战项目之富文本编辑器实现微信小程序实战项目之富文本编辑器实现Oct 08, 2022 pm 05:51 PM

本篇文章给大家带来了关于微信小程序的相关知识,其中主要介绍了关于富文本编辑器的实战示例,包括了创建发布页面、实现基本布局、实现编辑区操作栏的功能等内容,下面一起来看一下,希望对大家有帮助。

西安坐地铁用什么小程序西安坐地铁用什么小程序Nov 17, 2022 am 11:37 AM

西安坐地铁用的小程序为“乘车码”。使用方法:1、打开手机微信客户端,点击“发现”中的“小程序”;2、在搜索栏中输入“乘车码”进行搜索;3、直接定位城市西安,或者搜索西安,点击“西安地铁乘车码”选项的“去乘车”按钮;4、根据腾讯官方提示进行授权,开通“乘车码”业务即可利用该小程序提供的二维码来支付乘车了。

微信小程序开发工具介绍微信小程序开发工具介绍Oct 08, 2022 pm 04:47 PM

本篇文章给大家带来了关于微信小程序的相关问题,其中主要介绍了关于开发工具介绍的相关内容,包括了下载开发工具以及编辑器总结等内容,下面一起来看一下,希望对大家有帮助。

简单介绍:实现小程序授权登录功能简单介绍:实现小程序授权登录功能Nov 07, 2022 pm 05:32 PM

本篇文章给大家带来了关于微信小程序的相关知识,其中主要介绍了怎么实现小程序授权登录功能的相关内容,下面一起来看一下,希望对大家有帮助。

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool