|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- # uni-read-pages
-
-    
-
- 通过 [vue.config.js](https://cli.vuejs.org/zh/config/) 配合此库,可以随心所欲的读取 `pages.json` 下的所有配置
-
- ## 安装
-
- 您可以使用 `Yarn` 或 `npm` 安装该软件包(选择一个):
-
- ##### Yarn
-
- ```sh
- yarn add uni-read-pages
- ```
- ##### npm
-
- ```sh
- npm install uni-read-pages
- ```
- ## 开始
- 配置 `vue.config.js` 通过 `webpack` 注入全局变量 [查看文档](https://www.webpackjs.com/plugins/define-plugin/)
-
- #### 配置 `vue.config.js`
- ```js
- //vue.config.js
- const TransformPages = require('uni-read-pages')
- const tfPages = new TransformPages()
- module.exports = {
- configureWebpack: {
- plugins: [
- new tfPages.webpack.DefinePlugin({
- ROUTES: JSON.stringify(tfPages.routes)
- })
- ]
- }
- }
- ```
- 借助`webpack.DefinePlugin` 轻松注入全局变量。`ROUTES` 及可全局使用
-
- #### 使用
- ```js
- // xxx.vue
- <script>
- export default {
- data() {
- return {
- title: 'Hello'
- }
- },
- onLoad() {
- console.log(ROUTES)
- },
- }
- </script>
- ```
- ## API
- #### options
- ```js
- //默认值
- const CONFIG={
- cli:false, //当前是否为脚手架初始化的项目
- includes:['path','aliasPath','name'] //需要获取包涵的字段
- }
- ```
-
- #### Instance method
-
- * **getPagesRoutes**
- * 通过读取 `pages.json` 文件 生成直接可用的routes
-
- * **parsePages(pageCallback, subPageCallback)**
- * 单条page对象解析
-
- * **resolvePath(dir)**
- * 解析绝对路径
-
- #### Instance attr
-
- * **CONFIG**
- * 当前配置项
-
- * **webpack**
- * 当前工程下需要用到 `webpack`
-
- * **uniPagesJSON**
- * 当前 `uni-app` 内置对象,可以通过此属性调用一些内置方法
-
- * **routes**
- * 通过 **includes** 解析后得到的路由表 **可直接使用**
-
- #### getter
-
- * **pagesJson**
- * 获取所有 `pages.json` 下的内容 返回 `json`
-
-
- #### uniPagesJSON method
-
- * getMainEntry()
- * getNVueMainEntry()
- * parsePages (pagesJson, pageCallback, subPageCallback)
- * parseEntry (pagesJson)
- * getPagesJson()
- * parsePagesJson (content, loader)
-
- #### uniPagesJSON attr
- * pagesJsonJsFileName //默认值 pages.js
|