diff --git a/package.json b/package.json index 159c62cc7010eb024cdd20fc248a0870045f0714..96f88a71b49d6508e25e20bdb440105d3818392a 100644 --- a/package.json +++ b/package.json @@ -5,13 +5,14 @@ "lint": "eslint --fix --config package.json --ext .js --ext .vue --ignore-path .eslintignore build src", "dev:h5": "npm run lint && cross-env NODE_ENV=production UNI_WATCH=true UNI_PLATFORM=h5 node build/build.js", "build:h5": "npm run lint && cross-env NODE_ENV=production UNI_WATCH=false UNI_PLATFORM=h5 node build/build.js", - "build:app-plus": "npm run lint && cross-env UNI_PLATFORM=app-plus rollup -c build/rollup.config.js", + "build:app-plus": "cross-env UNI_PLATFORM=app-plus rollup -c build/rollup.config.js", "build:service:legacy": "npm run lint && rollup -c build/rollup.config.service.js", - "build:mp-qq": "npm run lint && cross-env UNI_PLATFORM=mp-qq rollup -c build/rollup.config.js", - "build:mp-weixin": "npm run lint && cross-env UNI_PLATFORM=mp-weixin rollup -c build/rollup.config.js", - "build:mp-baidu": "npm run lint && cross-env UNI_PLATFORM=mp-baidu rollup -c build/rollup.config.js", - "build:mp-alipay": "npm run lint && cross-env UNI_PLATFORM=mp-alipay rollup -c build/rollup.config.js", - "build:mp-toutiao": "npm run lint && cross-env UNI_PLATFORM=mp-toutiao rollup -c build/rollup.config.js", + "build:mp-qq": "cross-env UNI_PLATFORM=mp-qq rollup -c build/rollup.config.js", + "build:mp-weixin": "cross-env UNI_PLATFORM=mp-weixin rollup -c build/rollup.config.js", + "build:mp-baidu": "cross-env UNI_PLATFORM=mp-baidu rollup -c build/rollup.config.js", + "build:mp-alipay": "cross-env UNI_PLATFORM=mp-alipay rollup -c build/rollup.config.js", + "build:mp-toutiao": "cross-env UNI_PLATFORM=mp-toutiao rollup -c build/rollup.config.js", + "build:runtime": "npm run lint && npm run build:mp-weixin && npm run build:mp-qq && npm run build:mp-alipay && npm run build:mp-baidu && npm run build:mp-toutiao && npm run build:app-plus", "test:unit": "cross-env NODE_ENV=test UNI_PLATFORM=h5 mocha-webpack --require tests/unit/setup.js --webpack-config build/webpack.config.test.js tests/unit/**/*.spec.js" }, "dependencies": {}, diff --git a/packages/uni-app-plus/dist/index.js b/packages/uni-app-plus/dist/index.js index beee9c9aeb894c96a1e50ddf59d158ea88031368..d0ba54295261d186dedacce3de928dfeab04a292 100644 --- a/packages/uni-app-plus/dist/index.js +++ b/packages/uni-app-plus/dist/index.js @@ -438,6 +438,10 @@ function hasHook (hook, vueOptions) { return true } + if (Vue.options && Array.isArray(Vue.options[hook])) { + return true + } + vueOptions = vueOptions.default || vueOptions; if (isFn(vueOptions)) { diff --git a/packages/uni-app-plus/package.json b/packages/uni-app-plus/package.json index bec586574cca8f8968d6aa4cf53ef1e0e2f2079a..a0430ec21d1a8f1732d7bba3cc3df5926792ba63 100644 --- a/packages/uni-app-plus/package.json +++ b/packages/uni-app-plus/package.json @@ -1,6 +1,6 @@ { "name": "@dcloudio/uni-app-plus", - "version": "0.0.244", + "version": "0.0.245", "description": "uni-app app-plus", "main": "dist/index.js", "scripts": { diff --git a/packages/uni-mp-alipay/dist/index.js b/packages/uni-mp-alipay/dist/index.js index fc8a1d62ff53f68e5702b7e7d07708ae91c744a4..ac4dd124d136167e58196e849ecc943a654039bc 100644 --- a/packages/uni-mp-alipay/dist/index.js +++ b/packages/uni-mp-alipay/dist/index.js @@ -813,6 +813,10 @@ function hasHook (hook, vueOptions) { return true } + if (Vue.options && Array.isArray(Vue.options[hook])) { + return true + } + vueOptions = vueOptions.default || vueOptions; if (isFn(vueOptions)) { diff --git a/packages/uni-mp-alipay/package.json b/packages/uni-mp-alipay/package.json index 89547bcefca36de925f2dba611474e30f470ed6a..78a0e2355dbb8e9651a853ab9bafe383a976ae71 100644 --- a/packages/uni-mp-alipay/package.json +++ b/packages/uni-mp-alipay/package.json @@ -1,6 +1,6 @@ { "name": "@dcloudio/uni-mp-alipay", - "version": "0.0.818", + "version": "0.0.819", "description": "uni-app mp-alipay", "main": "dist/index.js", "scripts": { diff --git a/packages/uni-mp-baidu/dist/index.js b/packages/uni-mp-baidu/dist/index.js index 07370eb8a0ee47e7b3ad191751fcc07e2aae32f3..afb46b03ea1f10d87a0de16f08c3ceafcbc537ac 100644 --- a/packages/uni-mp-baidu/dist/index.js +++ b/packages/uni-mp-baidu/dist/index.js @@ -538,6 +538,10 @@ function hasHook (hook, vueOptions) { return true } + if (Vue.options && Array.isArray(Vue.options[hook])) { + return true + } + vueOptions = vueOptions.default || vueOptions; if (isFn(vueOptions)) { diff --git a/packages/uni-mp-baidu/package.json b/packages/uni-mp-baidu/package.json index 929afdf782004c7d422328d0e03f038a2ea287fd..f2add45d857ed8fd3006442f307093c286e12b49 100644 --- a/packages/uni-mp-baidu/package.json +++ b/packages/uni-mp-baidu/package.json @@ -1,6 +1,6 @@ { "name": "@dcloudio/uni-mp-baidu", - "version": "0.0.846", + "version": "0.0.847", "description": "uni-app mp-baidu", "main": "dist/index.js", "scripts": { diff --git a/packages/uni-mp-qq/dist/index.js b/packages/uni-mp-qq/dist/index.js index 93582a607f508b40d2feaed0da26495e54767147..1550fb6c75c112f18167c13b7d2de2a8530f0b7c 100644 --- a/packages/uni-mp-qq/dist/index.js +++ b/packages/uni-mp-qq/dist/index.js @@ -502,6 +502,10 @@ function hasHook (hook, vueOptions) { return true } + if (Vue.options && Array.isArray(Vue.options[hook])) { + return true + } + vueOptions = vueOptions.default || vueOptions; if (isFn(vueOptions)) { diff --git a/packages/uni-mp-qq/package.json b/packages/uni-mp-qq/package.json index 7cf4cf0f9d3149dc5dac35d0475120acdf2ae645..1727eed6bdf1949213536155c6a7179c9c4a55a4 100644 --- a/packages/uni-mp-qq/package.json +++ b/packages/uni-mp-qq/package.json @@ -1,6 +1,6 @@ { "name": "@dcloudio/uni-mp-qq", - "version": "0.0.102", + "version": "0.0.103", "description": "uni-app mp-qq", "main": "dist/index.js", "scripts": { diff --git a/packages/uni-mp-toutiao/dist/index.js b/packages/uni-mp-toutiao/dist/index.js index 861f4dd76c205bf678eb6b6eb2f07e9d17784033..5701e1294f9434766bd3bab310f5f38eced7b321 100644 --- a/packages/uni-mp-toutiao/dist/index.js +++ b/packages/uni-mp-toutiao/dist/index.js @@ -583,6 +583,10 @@ function hasHook (hook, vueOptions) { return true } + if (Vue.options && Array.isArray(Vue.options[hook])) { + return true + } + vueOptions = vueOptions.default || vueOptions; if (isFn(vueOptions)) { diff --git a/packages/uni-mp-toutiao/package.json b/packages/uni-mp-toutiao/package.json index f1f0ad8da6bebc7a8969fe9d95a4a7de9d76f253..c614e07f90eff3048dd106c830f3cf906409664a 100644 --- a/packages/uni-mp-toutiao/package.json +++ b/packages/uni-mp-toutiao/package.json @@ -1,6 +1,6 @@ { "name": "@dcloudio/uni-mp-toutiao", - "version": "0.0.342", + "version": "0.0.343", "description": "uni-app mp-toutiao", "main": "dist/index.js", "scripts": { diff --git a/packages/uni-mp-weixin/dist/index.js b/packages/uni-mp-weixin/dist/index.js index 8ebf73d4fe3b7c0749cd30e60e9af8e89c645d3f..8b93d3c1d2c11212df4b33c2e3e1954803003872 100644 --- a/packages/uni-mp-weixin/dist/index.js +++ b/packages/uni-mp-weixin/dist/index.js @@ -440,6 +440,10 @@ function hasHook (hook, vueOptions) { return true } + if (Vue.options && Array.isArray(Vue.options[hook])) { + return true + } + vueOptions = vueOptions.default || vueOptions; if (isFn(vueOptions)) { diff --git a/packages/uni-mp-weixin/package.json b/packages/uni-mp-weixin/package.json index 522ee706a9a9e223a34f0cca4e3980ddf1ef1523..fb5e01b11ad5f4c8517e8ed239a1d172b395f261 100644 --- a/packages/uni-mp-weixin/package.json +++ b/packages/uni-mp-weixin/package.json @@ -1,6 +1,6 @@ { "name": "@dcloudio/uni-mp-weixin", - "version": "0.0.963", + "version": "0.0.964", "description": "uni-app mp-weixin", "main": "dist/index.js", "scripts": { diff --git a/src/core/runtime/wrapper/util.js b/src/core/runtime/wrapper/util.js index 1b82efcdef5e3aafe768d1972bf3dc28332f830c..270e73fc38c3cf3ecc58465c391049871fb3528a 100644 --- a/src/core/runtime/wrapper/util.js +++ b/src/core/runtime/wrapper/util.js @@ -1,3 +1,5 @@ +import Vue from 'vue' + import { isFn, noop, @@ -28,6 +30,10 @@ function hasHook (hook, vueOptions) { return true } + if (Vue.options && Array.isArray(Vue.options[hook])) { + return true + } + vueOptions = vueOptions.default || vueOptions if (isFn(vueOptions)) {