编辑 | blame | 历史 | 原始文档

README

解决mpvue多个页面公用一个vm对象的问题 mpvue issue 140

使用方法:

!注意:master分支是基于1.1.2版本的,如果你现有工程用的是1.0.x的版本,因为目录结构不一样会有问题。2个方法解决:

  1. 直接使用我的1.0.x的分支,pagckage.json 中添加依赖
"mpvue-loader": "git+https://github.com/HelloZJW/mpvue-loader.git#patch1.0.x",
"mpvue-page-factory": "^1.0.0",
  1. 参考升级指南修改工程配置

如果是现有工程使用的是1.1.x版本,直接使用使用master分支

pagckage.json 中添加依赖
"mpvue-loader": "git+https://github.com/HelloZJW/mpvue-loader.git", "mpvue-page-factory": "^1.0.0",

添加完依赖以后,需要修改页面的main.js入口文件为

```javascript
import pageFactory from 'mpvue-page-factory'
import App from './index'

Page(pageFactory(App))
```

如果你用了mpvue-entry:

"mpvue-loader": "git+https://github.com/HelloZJW/mpvue-loader.git",
"mpvue-page-factory": "^1.0.0",

配置方法:

在你的pages.js相同目录下建一个template.js文件,此文件为入口模板;里面内容为:
```
import pageFactory from 'mpvue-page-factory'
import App from '@/App'

Page(pageFactory(App))
然后修改build/webpack.base.conf.js 中MpvueEntry.getEntry()方法的入参
const entry = MpvueEntry.getEntry({
pages: './src/pages.js', //可以不填,缺省就是这个
main: './src/main.js', //可以不填,缺省就是这个
template: './src/template.js'
})
```
然后你会发现node_module/mpvue-entry/dist目录里面js文件内容发生了变化。

image

enjoy,其他工程代码不需要修改