动动你可爱的小手手点亮一颗star, 模板基于原生小程序 + axios(原生wx.request封装) + vant ui + less + iconfont + eslint 搭建, 纯粹干净, 希望能帮你少踩一些坑
# 克隆项目
git clone https://github.com/coldblue123/weapp-template.git
# 进入项目目录
cd weapp-template
# 安装依赖
npm install
# 写入appid至项目
npm run dev 您的小程序appid
# 构建npm
微信开发者工具 工具 => 构建npm => 重新编译
- √ 环境变量配置
- √ 自定义预处理命令配置
- √ axios基于原生wx.request的封装
- √ vantUi
- √ 全局状态管理
- √ 计算属性
- √ less转wxss
- √ sass转wxss
- √ iconfont组件
- √ 冗余文件过滤
- √ eslint
env.js
里通过设置 WE_APP_BASE_API
来设置 request
请求的基本路径
// weapp state base api
export const WE_APP_BASE_API = 'http://test001-api.xxx/v1'
package.json
里的 scripts
配置 dev
build
- 通过
npm run dev ${1} ${2}
启用开发环境 - 通过
npm run build ${1} ${2}
打包上传环境
${1}
appid必传${2}
BASE_API默认正式服,非必传
1.便于多个小程序appid
切换
2.便于多个服务器BASE_API
切换
启用自定义预处理命令配置命令, 在编译前或上传前会自动替换appid
与BASE_API
使用文档在request/README.md
在app.js
初始化
import initAxios from './request/create'
App({
onLaunch: function() {
// 初始化axios
initAxios()
}
})
项目默认引入vantUi, 构建npm文件后生成 miniprogram_npm/@vant/weapp
vantUi组件目录
/components/mobx-example/index
为全局状态管理mobx示例
全局状态管理, 不要为了用而用, 看自己的项目是否有确切的需求, 花俏的堆砌反而会造成项目拥挤
components/computed-example/index.js
为computed和watch示例
wxs已经可以满足常规开发计算需要, 如果你的项目不严格要求组件化, 可以考虑不使用计算属性
vscode安装插件 easy less
vscode编写less保存会自动编译生成wxss
在.vscode/settings.json
中添加以下配置
"less.compile": {
"outExt": ".wxss"
}
vscode安装插件 easy sass
vscode编写scss保存会自动编译生成wxss
在.vscode/settings.json
中添加以下配置
"easysass.formats": [{
"format": "expanded",
"extension": ".wxss"
}]
components/svg-icon
已添加至全局组件
iconfont
文件在app.less
中引入
<svg-icon icon="iconfont-github-o" size="108rpx" color="#333333"></svg-icon>
上传代码审核时会有不少冗余文件, 可以在project.config.json
中过滤
"packOptions": {
"ignore": [
{
"type": "folder",
"value": ".vscode"
},
{
"type": "file",
"value": ".gitignore"
},
{
"type": "file",
"value": ".eslintrc.js"
},
{
"type": "file",
"value": "package.json"
},
{
"type": "file",
"value": "package-lock.json"
},
{
"type": "regexp",
"value": "\\.md$"
},
{
"type": "regexp",
"value": "\\.less$"
},
{
"type": "regexp",
"value": "\\.scss$"
}
]
}
更改.eslint.js
配置属于自己的规范, 小程序因为不支持browser
显示, 所以仅在vscode中会出现错误提示, 并且在vscode中保存会自动格式化代码
- 注意小程序全局变量会出现eslint错误, 因此需要手动添加全局变量
eslint
自动格式化和wxss
自动编译转换在部分同学的 vscode 开发工具中不能正常使用
解决方案:
第一步: 在vscode中点击 文件=>将工作区另存为
第二步: 在vscode中点击 文件=>打开工作区(选择刚刚另存为的工作区文件, 文件的后缀为.code-workspace
)