最近在研究小程序这方面的东西,使用到了京东基于 React 的小程序开发框架 Taro ,相比 mpvue 和 uni-app 这两个框架来说,Taro 显得更优雅,更稳重,大厂在迭代,就是不一样,一句话 ,就是坑少一点~
前置知识
看本篇教程前需要你掌握 dva ,React Hooks ,Redux ,还有小程序的开发流程。希望你知其然,并知其所以然。如果你不具备以上任意一点,建议先停下来,下面我给出地址,先自行学习之后再过来看我这篇文章 。
正式开始
安装 Taro脚手架# 使用 npm 安装 CLI
$ npm install -g @tarojs/cli
# OR 使用 yarn 安装 CLI
$ yarn global add @tarojs/cli
# OR 安装了 cnpm,使用 cnpm 安装 CLI
$ cnpm install -g @tarojs/cli
因为我电脑安装了 cnpm 镜像源,所以下文我都会用 cnpm
脚手架完成后使用脚手架初始化一个新项目
在你需要建立项目的文件夹打开 CMDtaro init test//我们演示的项目名叫test
然后跟着流程走,这边为了减少你的学习成本,建议不要选择 Typescript ,css选择less,模版选择默认模版。
最后成功之后,用你的编辑器打开test目录。
你的目录结构跟我的应该是一样的
先删除 ./src/pages 下面的 index 文件夹。
然后命令行在test 目录打开,安装我们需要用的扩展cnpm install --save @tarojs/async-await //没想到吧 在Taro里面使用 async和 await 需要安装这个扩展
cnpm install --save redux @tarojs/redux @tarojs/redux-h5 redux-thunk redux-logger //Redux全家桶
cnpm install --save dva-core dva-loading //dva
cnpm install --save taro-axios //在Taro里面使用axios 需要安装他
这四个命令安装完之后,打开./src 目录 ,新建两个文件夹 ,一个叫 utils 一个叫 models 注意这两个文件夹应该跟你的 pages 文件夹同级。
在 utils 文件夹下面新建文件 dva.js 写上下面的内容 注册dvaimport { create } from 'dva-core';
import { createLogger } from 'redux-logger';
import createLoading from 'dva-loading';
let app;
let store;
let dispatch;