diff --git a/packages/vue-cli-plugin-uni/lib/app-plus/index.js b/packages/vue-cli-plugin-uni/lib/app-plus/index.js index a59b8cdb35197f0db80b503378efea1ce57119c5..af7a9cfb979f2436a77010d61f3fd6e993b0d616 100644 --- a/packages/vue-cli-plugin-uni/lib/app-plus/index.js +++ b/packages/vue-cli-plugin-uni/lib/app-plus/index.js @@ -63,8 +63,11 @@ const v3 = { const statCode = getPlatformStat() const pushCode = getPlatformPush() - const beforeCode = 'import \'uni-pages\';' - + let beforeCode = 'import \'uni-pages\';' + if (JSON.parse(process.env.UNI_CLOUD_PROVIDER || '[]').length) { + const uniCloudLibPath = '@dcloudio/vue-cli-plugin-uni/packages/uni-cloud/dist/index.js' + beforeCode += `import '${uniCloudLibPath}';` + } if (!webpackConfig.optimization) { webpackConfig.optimization = {} } @@ -270,4 +273,4 @@ if (process.env.UNI_USING_V3) { module.exports = v3 } else { module.exports = require('../mp') -} +} diff --git a/packages/vue-cli-plugin-uni/lib/h5/index.js b/packages/vue-cli-plugin-uni/lib/h5/index.js index 2abe951f6723426c0d94d0205c7f4bdd9696d4f6..5c85d03528d5a6f1acda65b8682222ca4f11e175 100644 --- a/packages/vue-cli-plugin-uni/lib/h5/index.js +++ b/packages/vue-cli-plugin-uni/lib/h5/index.js @@ -100,9 +100,12 @@ module.exports = { useBuiltIns = babelConfig.presets[0][1].useBuiltIns } catch (e) {} - const beforeCode = (useBuiltIns === 'entry' ? 'import \'@babel/polyfill\';' : '') + + let beforeCode = (useBuiltIns === 'entry' ? 'import \'@babel/polyfill\';' : '') + `import 'uni-pages';import 'uni-${process.env.UNI_PLATFORM}';` - + if (JSON.parse(process.env.UNI_CLOUD_PROVIDER || '[]').length) { + const uniCloudLibPath = '@dcloudio/vue-cli-plugin-uni/packages/uni-cloud/dist/index.js' + beforeCode += `import '${uniCloudLibPath}';` + } return { resolve: { extensions: ['.nvue'], @@ -188,4 +191,4 @@ module.exports = { require('./cssnano-options')(webpackConfig) } } -} +} diff --git a/packages/vue-cli-plugin-uni/lib/mp/index.js b/packages/vue-cli-plugin-uni/lib/mp/index.js index 745a17d87494c124289d91b6001250e4c042168f..726abde7db5c09299f0830840472dd92dc09a7c6 100644 --- a/packages/vue-cli-plugin-uni/lib/mp/index.js +++ b/packages/vue-cli-plugin-uni/lib/mp/index.js @@ -189,11 +189,16 @@ module.exports = { ? process.env.UNI_MP_PLUGIN_MAIN : JSON.parse(process.env.UNI_MP_PLUGIN_EXPORT) ).forEach(fileName => addToUniEntry(fileName)) - beforeCode += ` -// @ts-ignore + beforeCode += ` +// @ts-ignore ${globalEnv}.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;` } + if (JSON.parse(process.env.UNI_CLOUD_PROVIDER || '[]').length) { + const uniCloudLibPath = '@dcloudio/vue-cli-plugin-uni/packages/uni-cloud/dist/index.js' + beforeCode += `import '${uniCloudLibPath}';` + } + const alias = { // 仅 mp-weixin 'mpvue-page-factory': require.resolve( '@dcloudio/vue-cli-plugin-uni/packages/mpvue-page-factory') @@ -327,4 +332,4 @@ ${globalEnv}.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;` webpackConfig.plugins.delete('preload') webpackConfig.plugins.delete('prefetch') } -} +}