提交 42f14604 编写于 作者: 雪洛's avatar 雪洛

refactor: getPlatformUniCloud

上级 2e02ab4d
...@@ -58,8 +58,9 @@ const { ...@@ -58,8 +58,9 @@ const {
nvueCssPreprocessOptions, nvueCssPreprocessOptions,
nvueHtmlPreprocessOptions, nvueHtmlPreprocessOptions,
getPlatformGlobal, getPlatformGlobal,
getPlatformStat, getPlatformStat,
getPlatformPush getPlatformPush,
getPlatformUniCloud
} = require('./platform') } = require('./platform')
module.exports = { module.exports = {
...@@ -109,6 +110,7 @@ module.exports = { ...@@ -109,6 +110,7 @@ module.exports = {
nvueCssPreprocessOptions, nvueCssPreprocessOptions,
nvueHtmlPreprocessOptions, nvueHtmlPreprocessOptions,
getPlatformGlobal, getPlatformGlobal,
getPlatformStat, getPlatformStat,
getPlatformPush getPlatformPush,
} getPlatformUniCloud
}
...@@ -175,6 +175,13 @@ module.exports = { ...@@ -175,6 +175,13 @@ module.exports = {
} }
return '' return ''
}, },
getPlatformUniCloud () {
if (JSON.parse(process.env.UNI_CLOUD_PROVIDER || '[]').length) {
const uniCloudLibPath = '@dcloudio/vue-cli-plugin-uni/packages/uni-cloud/dist/index.js'
return `import '${uniCloudLibPath}';`
}
return ''
},
getBabelParserOptions () { getBabelParserOptions () {
return { return {
sourceType: 'module', sourceType: 'module',
...@@ -192,4 +199,4 @@ module.exports = { ...@@ -192,4 +199,4 @@ module.exports = {
] ]
} }
} }
} }
...@@ -4,7 +4,8 @@ const webpack = require('webpack') ...@@ -4,7 +4,8 @@ const webpack = require('webpack')
const { const {
getMainEntry, getMainEntry,
getPlatformStat, getPlatformStat,
getPlatformPush getPlatformPush,
getPlatformUniCloud
} = require('@dcloudio/uni-cli-shared') } = require('@dcloudio/uni-cli-shared')
const vueLoader = require('@dcloudio/uni-cli-shared/lib/vue-loader') const vueLoader = require('@dcloudio/uni-cli-shared/lib/vue-loader')
...@@ -62,12 +63,9 @@ const v3 = { ...@@ -62,12 +63,9 @@ const v3 = {
const statCode = getPlatformStat() const statCode = getPlatformStat()
const pushCode = getPlatformPush() const pushCode = getPlatformPush()
const uniCloudCode = getPlatformUniCloud()
let beforeCode = 'import \'uni-pages\';' const 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) { if (!webpackConfig.optimization) {
webpackConfig.optimization = {} webpackConfig.optimization = {}
} }
...@@ -159,7 +157,7 @@ const v3 = { ...@@ -159,7 +157,7 @@ const v3 = {
options: { options: {
compiler: vueLoader.compiler, compiler: vueLoader.compiler,
before: [ before: [
beforeCode + require('../util').getAutomatorCode() + statCode + pushCode + beforeCode + require('../util').getAutomatorCode() + statCode + pushCode + uniCloudCode +
getGlobalUsingComponentsCode() getGlobalUsingComponentsCode()
] ]
} }
......
...@@ -6,7 +6,8 @@ const { ...@@ -6,7 +6,8 @@ const {
getMainEntry, getMainEntry,
getH5Options, getH5Options,
getPlatformStat, getPlatformStat,
getPlatformPush getPlatformPush,
getPlatformUniCloud
} = require('@dcloudio/uni-cli-shared') } = require('@dcloudio/uni-cli-shared')
const { const {
...@@ -95,17 +96,15 @@ module.exports = { ...@@ -95,17 +96,15 @@ module.exports = {
const statCode = getPlatformStat() const statCode = getPlatformStat()
const pushCode = getPlatformPush() const pushCode = getPlatformPush()
const uniCloudCode = getPlatformUniCloud()
try { try {
const babelConfig = require(path.resolve(process.env.UNI_CLI_CONTEXT, 'babel.config.js')) const babelConfig = require(path.resolve(process.env.UNI_CLI_CONTEXT, 'babel.config.js'))
useBuiltIns = babelConfig.presets[0][1].useBuiltIns useBuiltIns = babelConfig.presets[0][1].useBuiltIns
} catch (e) {} } catch (e) {}
let beforeCode = (useBuiltIns === 'entry' ? 'import \'@babel/polyfill\';' : '') + const beforeCode = (useBuiltIns === 'entry' ? 'import \'@babel/polyfill\';' : '') +
`import 'uni-pages';import 'uni-${process.env.UNI_PLATFORM}';` `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 { return {
resolve: { resolve: {
extensions: ['.nvue'], extensions: ['.nvue'],
...@@ -121,7 +120,7 @@ module.exports = { ...@@ -121,7 +120,7 @@ module.exports = {
loader: path.resolve(__dirname, '../../packages/wrap-loader'), loader: path.resolve(__dirname, '../../packages/wrap-loader'),
options: { options: {
before: [ before: [
beforeCode + require('../util').getAutomatorCode() + statCode + pushCode + beforeCode + require('../util').getAutomatorCode() + statCode + pushCode + uniCloudCode +
getGlobalUsingComponentsCode() getGlobalUsingComponentsCode()
] ]
} }
......
...@@ -8,7 +8,8 @@ const { ...@@ -8,7 +8,8 @@ const {
getPlatformExts, getPlatformExts,
getPlatformCssnano, getPlatformCssnano,
getPlatformStat, getPlatformStat,
getPlatformPush getPlatformPush,
getPlatformUniCloud
} = require('@dcloudio/uni-cli-shared') } = require('@dcloudio/uni-cli-shared')
const WebpackUniAppPlugin = require('../../packages/webpack-uni-app-loader/plugin/index') const WebpackUniAppPlugin = require('../../packages/webpack-uni-app-loader/plugin/index')
...@@ -168,6 +169,7 @@ module.exports = { ...@@ -168,6 +169,7 @@ module.exports = {
const statCode = getPlatformStat() const statCode = getPlatformStat()
const pushCode = getPlatformPush() const pushCode = getPlatformPush()
const uniCloudCode = getPlatformUniCloud()
let beforeCode = 'import \'uni-pages\';' let beforeCode = 'import \'uni-pages\';'
...@@ -194,11 +196,6 @@ module.exports = { ...@@ -194,11 +196,6 @@ module.exports = {
${globalEnv}.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;` ${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 const alias = { // 仅 mp-weixin
'mpvue-page-factory': require.resolve( 'mpvue-page-factory': require.resolve(
'@dcloudio/vue-cli-plugin-uni/packages/mpvue-page-factory') '@dcloudio/vue-cli-plugin-uni/packages/mpvue-page-factory')
...@@ -244,7 +241,7 @@ ${globalEnv}.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;` ...@@ -244,7 +241,7 @@ ${globalEnv}.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;`
loader: path.resolve(__dirname, '../../packages/wrap-loader'), loader: path.resolve(__dirname, '../../packages/wrap-loader'),
options: { options: {
before: [ before: [
beforeCode + require('../util').getAutomatorCode() + statCode + pushCode beforeCode + require('../util').getAutomatorCode() + statCode + pushCode + uniCloudCode
] ]
} }
}, { }, {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册