# tarojs-router-next
[![](https://img.shields.io/npm/v/tarojs-router-next.svg?style=flat-square)](https://www.npmjs.com/package/tarojs-router-next)
[![](https://img.shields.io/npm/l/tarojs-router-next.svg?style=flat-square)](https://www.npmjs.com/package/tarojs-router-next)
[![](https://img.shields.io/npm/dt/tarojs-router-next.svg?style=flat-square)](https://www.npmjs.com/package/tarojs-router-next)
它是一个小巧的 [Taro(小程序)](https://github.com/nervjs/taro) 路由库,为你提供以下特性:
- 自动生成带参数类型提示的路由方法
- 允许传递任意类型、任意大小的参数数据
- 同步的路由方法调用
- koa 体验一致的路由中间件
## 快速开始
[使用文档](https://lblblong.github.io/tarojs-router-next/guide/quike/start),[API 文档](https://lblblong.github.io/tarojs-router-next/api/router)
[Demo(代码)](https://github.com/lblblong/tarojs-router-next/tree/master/examples),[Demo(微信开发者工具打开)](https://developers.weixin.qq.com/s/2CcFkJmo7Dpb)
#### 安装核心依赖
```shell
$ npm install --save tarojs-router-next
```
#### 安装路由方法自动生成插件
```shell
$ npm install --dev tarojs-router-next-plugin
```
在 [编译配置(/config/index.js)](https://taro-docs.jd.com/docs/config-detail#plugins) 的 plugins 字段中引入插件:
```typescript
const config = {
plugins: ['tarojs-router-next-plugin'],
}
```
## 解决什么问题
1. 路由跳转的页面 url 没有类型提示容易输错
2. 路由传参需要手动拼接参数、无法携带任意类型、任意大小的数据
3. 路由方法是异步的,页面通过 `EventChannel` 通信,事件的回调方法可读性差、耦合度高、只能在回调内部处理异常
4. 路由跳转的鉴权等实现起来比较麻烦
## 如何解决
**1. 路由跳转的页面 url 没有类型提示容易输错**
tarojs-router-next 不需要使用者手写页面 url,它会监听项目 `src/pages` 内容变化,自动为使用者生成对应的路由方法并附加到 [Router](https://lblblong.github.io/tarojs-router-next/api/router) 类上,比如以下列子:
左边的页面结构会生成右边的 [Router.to\*\*](https://lblblong.github.io/tarojs-router-next/api/router#to-options-) 系列方法,全都挂在 [Router](https://lblblong.github.io/tarojs-router-next/api/router) 类上
![](https://lblblong.github.io/tarojs-router-next/images/code1.png)
**2. 路由传参需要手动拼接参数、无法携带任意类型、任意大小的数据**
tarojs-router-next 允许直接传递一个对象给 `params`,它会把 `params` 展开拼接到 `url` 后面。并且还可以接收一个 `data` 参数,`data` 可以传递任意类型、任意大小的数据。
![](https://lblblong.github.io/tarojs-router-next/images/code2.gif)
**3. 路由方法是异步的,页面通过 `EventChannel` 通信,事件的回调方法可读性差、耦合度高、只能在回调内部处理异常**
tarojs-router-next 的路由跳转会返回一个 `Promise`,可以用 `async/await` 写出同步代码,详细参考 [同步的路由方法](https://lblblong.github.io/tarojs-router-next/guide/quike/sync-router)
**4. 路由跳转的鉴权等实现起来比较麻烦**
自己实现路由的鉴权是比较麻烦的事情,而 tarojs-router-next 提供非常易于理解的路由中间件功能,详细参考 [路由中间件](https://lblblong.github.io/tarojs-router-next/guide/quike/middleware)
## 平台与框架支持
#### 框架
支持所有 `Taro` 可支持的框架(`React`、`Vue`、`Vue3`、`Nerv`)
#### 小程序
理论上支持所有 `Taro` 可支持的小程序平台,目前已在 `微信小程序`、`QQ小程序`、`支付宝小程序` 测试通过
#### H5
支持
#### React Native
暂不支持
## 友情推荐
#### Taroify
地址:https://github.com/mallfoundry/taroify
Taroify 是移动端组件库 Vant 的 Taro 版本,两者基于相同的视觉规范,提供一致的 API 接口,助力开发者快速搭建小程序应用。
没有合适的资源?快使用搜索试试~ 我知道了~
Taro 小程序路由库,自动生成带参数类型提示的路由方法,允许传递任意类型、任意大小的参数数据,同步的路由方法调用,koa体验一...
共176个文件
ts:65个
md:23个
json:15个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 4 浏览量
2025-01-02
21:19:23
上传
评论
收藏 2.59MB ZIP 举报
温馨提示
tarojs-路由器-next 它是一个小巧的 Taro(小程序) 路由库,为你提供以下特性自动生成带参数类型提示的路由方法允许传递任意类型、任意大小的参数数据同步的路由方法调用koa 体验一致的路由中间件快速开始使用文档,API 文档Demo(代码),Demo(微信开发者工具打开)安装核心依赖$ npm install --save tarojs-router-next安装路由方法自动生成插件$ npm install --dev tarojs-router-next-plugin在 编译配置(/config/index.js) 的 plugins 字段中引入插件const config = { plugins: ['tarojs-router-next-plugin'],}解决什么问题路由跳转的页面 url 没有类型提示容易输错路由传参需要手动拼接参数、无法携带任意类型、任意大小的数据路由方法是异步的,页面通过 EventChannel 通信,事件的回调方法可读性差、耦合度高、只能在回调内部处理异常路由跳转的鉴权等实现
资源推荐
资源详情
资源评论
收起资源包目录
Taro 小程序路由库,自动生成带参数类型提示的路由方法,允许传递任意类型、任意大小的参数数据,同步的路由方法调用,koa体验一致的路由中间件.zip (176个子文件)
commit-msg 115B
overrides.css 188B
index.css 117B
index.css 63B
app.css 0B
index.css 0B
index.css 0B
index.css 0B
index.css 0B
index.css 0B
index.css 0B
app.css 0B
.editorconfig 197B
.editorconfig 197B
.eslintrc 352B
.eslintrc 144B
.eslintrc 31B
code2.gif 2.22MB
.gitignore 83B
.gitignore 64B
.gitignore 64B
.gitignore 52B
.gitignore 52B
.gitignore 2B
index.html 1011B
index.html 641B
favicon.ico 4KB
index.js 2KB
index.js 2KB
.cz-config.js 826B
prod.js 423B
prod.js 423B
babel.config.js 231B
babel.config.js 230B
dev.js 112B
dev.js 112B
index.js 94B
package.json 3KB
package.json 3KB
package.json 1KB
tsconfig.json 687B
package.json 686B
tsconfig.json 681B
tsconfig.json 643B
package.json 608B
tsconfig.json 574B
project.config.json 268B
project.config.json 266B
tsconfig.json 260B
project.tt.json 143B
project.tt.json 142B
.commitlintrc.json 52B
LICENSE 1KB
middleware.md 6KB
router.md 5KB
README.md 4KB
README.md 4KB
README.md 4KB
qa.md 3KB
index.md 3KB
CHANGELOG.md 3KB
params.md 2KB
start.md 2KB
navigate.md 2KB
sync-router.md 2KB
register-middleware.md 2KB
route-config.md 2KB
subpackage.md 1KB
other.md 1KB
index.md 633B
config.md 530B
register-router-back-listener.md 428B
register-middlewares.md 398B
router-back-listener.md 341B
middleware-auth.md 38B
value-across-page.md 32B
.npmrc 38B
.npmrc 21B
code1.png 40KB
koa.png 35KB
code3.png 21KB
logo.png 2KB
.prettierrc 81B
.prettierrc 81B
.prettierrc 81B
index.scss 106B
index.scss 62B
index.scss 0B
index.scss 0B
index.scss 0B
app.scss 0B
loader.ts 7KB
index.ts 4KB
generator.ts 3KB
.dumirc.ts 3KB
plugin.ts 3KB
index.ts 2KB
type.ts 1KB
compose.ts 1KB
index.ts 1KB
共 176 条
- 1
- 2
资源评论
赵闪闪168
- 粉丝: 1726
- 资源: 6932
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【岗位说明】主任药师的岗位职责.docx
- 【岗位说明】中医皮肤科门诊医师岗位职责.docx
- 【岗位说明】XX服装产品开发部工作职责.doc
- 【岗位说明】纺织行业部门岗位职责说明.doc
- 【岗位说明】服装厂工作制度职责及要求.doc
- 【岗位说明】服装代理公司各岗位职能详细表.doc
- 【岗位说明】服装公司岗位说明书(大全).doc
- 【岗位说明】服装公司岗位说明书.doc
- 【岗位说明】服装公司岗位职责01.doc
- 【岗位说明】服装公司岗位职责03.doc
- 【岗位说明】服装公司岗位职责02.doc
- 【岗位说明】服装公司组织架构及岗位职责.doc
- 【岗位说明】服装公司营运部各岗位职责与工作内容.doc
- 【岗位说明】服装品牌岗位职责.docx
- 【岗位说明】服装制衣厂工作职责.doc
- 【岗位说明】服装销售员岗位职责.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功