提交 539930bb authored 作者: zyx's avatar zyx

框架可升级,测试成功

上级 b07c1401
var semver = require('semver')
var requiredVersion = require('../package.json').engines.node
function checkNodeVersion (wanted, id) {
if (!semver.satisfies(process.version, wanted)) {
console.log('\x1b[91m%s\x1B[0m',
'You are using Node ' + process.version + ', but this version of ' + id +
' requires Node ' + wanted + '.\nPlease upgrade your Node version.'
)
process.exit(1)
}
}
checkNodeVersion(requiredVersion, '`node uploadAliyunCDN.js`')
const isDev = process.env.NODE_ENV const isDev = process.env.NODE_ENV
const RegStrs = require('./regExpStr.js')
let config = { let config = {
isDev: isDev, isDev: isDev,
...@@ -21,6 +22,8 @@ let config = { ...@@ -21,6 +22,8 @@ let config = {
webpack: {} webpack: {}
} }
config.RegStrs = RegStrs
let vueClientConfig = {} let vueClientConfig = {}
config.domain = '' config.domain = ''
if (config.isDev === 'development') { if (config.isDev === 'development') {
......
/* 由于正则表达式,不能进行跟 gulpfile 中 去注释 在一起 */
module.exports = {
regExp_static: /('|"|`)[\.|\/]*?static\/(.*?\.(png|jpe?g|gif|svg|ico)(\?.*)?)\1/g
}
const _conf = require('./config')
module.exports = function (source) {
if (_conf.isDev !== 'development') {
return source
.replace(_conf.RegStrs.regExp_static, '$1' + _conf.CDN_BASE + _conf.CDN_DIR + 'static/$2$1')
} else {
return source
}
}
...@@ -52,7 +52,8 @@ $GLOBAL.BaseConfig = { ...@@ -52,7 +52,8 @@ $GLOBAL.BaseConfig = {
'@api': path.resolve(__dirname, '../' + $GLOBAL.ResDir + '/api'), '@api': path.resolve(__dirname, '../' + $GLOBAL.ResDir + '/api'),
'@action': path.resolve(__dirname, '../' + $GLOBAL.ResDir + '/action'), '@action': path.resolve(__dirname, '../' + $GLOBAL.ResDir + '/action'),
'@tool': path.resolve(__dirname, '../' + $GLOBAL.ResDir + '/tool') '@tool': path.resolve(__dirname, '../' + $GLOBAL.ResDir + '/tool')
} },
extensions: ['.js', '.json', '.jsx', '.vue']
}, },
module: { module: {
rules: [ rules: [
...@@ -62,6 +63,12 @@ $GLOBAL.BaseConfig = { ...@@ -62,6 +63,12 @@ $GLOBAL.BaseConfig = {
exclude: /node_modules/, exclude: /node_modules/,
enforce: 'pre' enforce: 'pre'
}, },
{
test: /\.(vue|js|jsx)|((sa|sc|c)ss)$/,
loader: './build/stringReplaceLoader.js',
exclude: /node_modules/,
enforce: 'pre'
},
{ {
test: /\.vue$/, test: /\.vue$/,
loader: 'vue-loader' loader: 'vue-loader'
......
...@@ -9,6 +9,7 @@ const VueLoaderPlugin = require('vue-loader/lib/plugin') ...@@ -9,6 +9,7 @@ const VueLoaderPlugin = require('vue-loader/lib/plugin')
const AutoPrefixer = require('autoprefixer') const AutoPrefixer = require('autoprefixer')
const MiniCssExtractPlugin = require('mini-css-extract-plugin') const MiniCssExtractPlugin = require('mini-css-extract-plugin')
const HtmlWebpackPlugin = require('html-webpack-plugin') const HtmlWebpackPlugin = require('html-webpack-plugin')
const HtmlReplaceWebpackPlugin = require('html-replace-webpack-plugin')
const CopyWebpackPlugin = require('copy-webpack-plugin') const CopyWebpackPlugin = require('copy-webpack-plugin')
const VconsoleWebpackPlugin = require('vconsole-webpack-plugin') const VconsoleWebpackPlugin = require('vconsole-webpack-plugin')
const $GLOBAL = require('./webpack.base.conf') const $GLOBAL = require('./webpack.base.conf')
...@@ -158,6 +159,12 @@ if ($GLOBAL.isDev === 'development') { ...@@ -158,6 +159,12 @@ if ($GLOBAL.isDev === 'development') {
collapseWhitespace: true collapseWhitespace: true
} }
}), }),
new HtmlReplaceWebpackPlugin([
{
pattern: $GLOBAL.RegStrs.regExp_static,
replacement: '$1' + $GLOBAL.webConf.CDN_PATH + 'static/$2$1'
}
]),
new CopyWebpackPlugin([ new CopyWebpackPlugin([
{ {
from: $GLOBAL.EntryStaticPath, from: $GLOBAL.EntryStaticPath,
...@@ -168,10 +175,10 @@ if ($GLOBAL.isDev === 'development') { ...@@ -168,10 +175,10 @@ if ($GLOBAL.isDev === 'development') {
} }
} }
]), ]),
// $GLOBAL.isDev === 'test' && new VconsoleWebpackPlugin({ new VconsoleWebpackPlugin({
// filter: [], filter: [],
// enable: $GLOBAL.isEnableToIphoneDebugger enable: $GLOBAL.isEnableToIphoneDebugger
// }) })
], ],
optimization: { optimization: {
runtimeChunk: { runtimeChunk: {
......
{ {
"name": "@god/vue-client", "name": "@god/vue-client",
"version": "3.0.13", "version": "3.0.11",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {
...@@ -31,7 +31,6 @@ ...@@ -31,7 +31,6 @@
"json5": "^2.1.2", "json5": "^2.1.2",
"lodash": "^4.17.19", "lodash": "^4.17.19",
"resolve": "^1.3.2", "resolve": "^1.3.2",
"semver": "^5.4.1",
"source-map": "^0.5.0" "source-map": "^0.5.0"
}, },
"dependencies": { "dependencies": {
...@@ -463,13 +462,13 @@ ...@@ -463,13 +462,13 @@
}, },
"@vant/icons": { "@vant/icons": {
"version": "1.3.0", "version": "1.3.0",
"resolved": "https://registry.npmjs.org/@vant/icons/-/icons-1.3.0.tgz", "resolved": "https://registry.npm.taobao.org/@vant/icons/download/@vant/icons-1.3.0.tgz?cache=0&sync_timestamp=1599114567909&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vant%2Ficons%2Fdownload%2F%40vant%2Ficons-1.3.0.tgz",
"integrity": "sha512-uQ0H19C+SDZbvaUR3CfrpJe/oiMeXPtJJvdRNjswpxICh1LRdKvQf9FxG2PhhWjAJWKyP55CVXn22qFswOUIRg==" "integrity": "sha1-lPTJMSL9czHg4A31WAR3murYycI="
}, },
"@vue/babel-helper-vue-jsx-merge-props": { "@vue/babel-helper-vue-jsx-merge-props": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.0.0.tgz", "resolved": "https://registry.npm.taobao.org/@vue/babel-helper-vue-jsx-merge-props/download/@vue/babel-helper-vue-jsx-merge-props-1.0.0.tgz",
"integrity": "sha512-6tyf5Cqm4m6v7buITuwS+jHzPlIPxbFzEhXR5JGZpbrvOcp1hiQKckd305/3C7C36wFekNTQSxAtgeM0j0yoUw==" "integrity": "sha1-BI/leZWNpAj7eosqPsBQtQpmEEA="
}, },
"@vue/component-compiler-utils": { "@vue/component-compiler-utils": {
"version": "3.2.0", "version": "3.2.0",
...@@ -1878,6 +1877,12 @@ ...@@ -1878,6 +1877,12 @@
"caniuse-lite": "^1.0.30000844", "caniuse-lite": "^1.0.30000844",
"electron-to-chromium": "^1.3.47" "electron-to-chromium": "^1.3.47"
} }
},
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
} }
} }
}, },
...@@ -3063,6 +3068,14 @@ ...@@ -3063,6 +3068,14 @@
"requires": { "requires": {
"pify": "^4.0.1", "pify": "^4.0.1",
"semver": "^5.6.0" "semver": "^5.6.0"
},
"dependencies": {
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
}
} }
}, },
"p-limit": { "p-limit": {
...@@ -4380,6 +4393,14 @@ ...@@ -4380,6 +4393,14 @@
"natural-compare": "^1.4.0", "natural-compare": "^1.4.0",
"semver": "^5.6.0", "semver": "^5.6.0",
"vue-eslint-parser": "^7.0.0" "vue-eslint-parser": "^7.0.0"
},
"dependencies": {
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
}
} }
}, },
"eslint-scope": { "eslint-scope": {
...@@ -4545,6 +4566,14 @@ ...@@ -4545,6 +4566,14 @@
"semver": "^5.5.0", "semver": "^5.5.0",
"shebang-command": "^1.2.0", "shebang-command": "^1.2.0",
"which": "^1.2.9" "which": "^1.2.9"
},
"dependencies": {
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
}
} }
}, },
"path-key": { "path-key": {
...@@ -5567,6 +5596,12 @@ ...@@ -5567,6 +5596,12 @@
} }
} }
}, },
"html-replace-webpack-plugin": {
"version": "2.5.6",
"resolved": "https://registry.npm.taobao.org/html-replace-webpack-plugin/download/html-replace-webpack-plugin-2.5.6.tgz",
"integrity": "sha1-zCvEYp/JhJZ4AfnoGwsemQcBLdM=",
"dev": true
},
"html-webpack-plugin": { "html-webpack-plugin": {
"version": "4.4.1", "version": "4.4.1",
"resolved": "https://registry.npm.taobao.org/html-webpack-plugin/download/html-webpack-plugin-4.4.1.tgz", "resolved": "https://registry.npm.taobao.org/html-webpack-plugin/download/html-webpack-plugin-4.4.1.tgz",
...@@ -7126,6 +7161,14 @@ ...@@ -7126,6 +7161,14 @@
"resolve": "^1.10.0", "resolve": "^1.10.0",
"semver": "2 || 3 || 4 || 5", "semver": "2 || 3 || 4 || 5",
"validate-npm-package-license": "^3.0.1" "validate-npm-package-license": "^3.0.1"
},
"dependencies": {
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
}
} }
}, },
"normalize-path": { "normalize-path": {
...@@ -8881,9 +8924,10 @@ ...@@ -8881,9 +8924,10 @@
} }
}, },
"semver": { "semver": {
"version": "5.7.1", "version": "1.1.4",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz", "resolved": "https://registry.npm.taobao.org/semver/download/semver-1.1.4.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=" "integrity": "sha1-LlpOcrqwNHLMl/cnU7RQiRLvVUA=",
"dev": true
}, },
"send": { "send": {
"version": "0.17.1", "version": "0.17.1",
...@@ -9853,6 +9897,14 @@ ...@@ -9853,6 +9897,14 @@
"requires": { "requires": {
"pify": "^4.0.1", "pify": "^4.0.1",
"semver": "^5.6.0" "semver": "^5.6.0"
},
"dependencies": {
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
}
} }
}, },
"p-limit": { "p-limit": {
...@@ -10453,9 +10505,9 @@ ...@@ -10453,9 +10505,9 @@
} }
}, },
"vant": { "vant": {
"version": "2.10.6", "version": "2.10.8",
"resolved": "https://registry.npmjs.org/vant/-/vant-2.10.6.tgz", "resolved": "https://registry.npm.taobao.org/vant/download/vant-2.10.8.tgz",
"integrity": "sha512-i/5rvBxwgkPTRExaENYMWa1HA+3QWiSuKOJUJaS0c8aKm/gfzrQ/n3HKfO77/XBe7L6LKdZRmyqpSZPYhLL/sQ==", "integrity": "sha1-euVmrRBikMmuhF0mSby9ix32yxQ=",
"requires": { "requires": {
"@babel/runtime": "7.x", "@babel/runtime": "7.x",
"@vant/icons": "1.3.0", "@vant/icons": "1.3.0",
...@@ -10554,8 +10606,8 @@ ...@@ -10554,8 +10606,8 @@
}, },
"vue-lazyload": { "vue-lazyload": {
"version": "1.2.3", "version": "1.2.3",
"resolved": "https://registry.npmjs.org/vue-lazyload/-/vue-lazyload-1.2.3.tgz", "resolved": "https://registry.npm.taobao.org/vue-lazyload/download/vue-lazyload-1.2.3.tgz",
"integrity": "sha512-DC0ZwxanbRhx79tlA3zY5OYJkH8FYp3WBAnAJbrcuoS8eye1P73rcgAZhyxFSPUluJUTelMB+i/+VkNU/qVm7g==" "integrity": "sha1-kB+ewVx+bKeHgaK65KNDaGve2yw="
}, },
"vue-loader": { "vue-loader": {
"version": "15.9.3", "version": "15.9.3",
...@@ -10876,6 +10928,14 @@ ...@@ -10876,6 +10928,14 @@
"semver": "^5.5.0", "semver": "^5.5.0",
"shebang-command": "^1.2.0", "shebang-command": "^1.2.0",
"which": "^1.2.9" "which": "^1.2.9"
},
"dependencies": {
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
}
} }
}, },
"path-key": { "path-key": {
...@@ -11214,6 +11274,14 @@ ...@@ -11214,6 +11274,14 @@
"dev": true, "dev": true,
"requires": { "requires": {
"semver": "^5.0.1" "semver": "^5.0.1"
},
"dependencies": {
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz",
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
"dev": true
}
} }
}, },
"word-wrap": { "word-wrap": {
......
{ {
"name": "@god/vue-client", "name": "@god/vue-client",
"version": "3.0.13", "version": "3.0.11",
"description": "适应于公司全系统的纯客户端开发模型", "description": "适应于公司全系统的纯客户端开发模型",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
"lint": "eslint --ext .js --ext .jsx --ext .vue src/", "lint": "eslint --ext .js --ext .jsx --ext .vue src/",
"lint:fix": "eslint --fix --ext .js --ext .jsx --ext .vue src/", "lint:fix": "eslint --fix --ext .js --ext .jsx --ext .vue src/",
"dev": "cross-env NODE_ENV=development node build/getSSL.js && cross-env NODE_ENV=development SERVER_PORT=3001 webpack-dev-server --inline --progress --config build/webpack.client.conf.js", "dev": "npm run check:node && cross-env NODE_ENV=development node build/getSSL.js && cross-env NODE_ENV=development SERVER_PORT=3001 webpack-dev-server --inline --progress --config build/webpack.client.conf.js",
"build:test": "cross-env NODE_ENV=test webpack --progress --config build/webpack.client.conf.js && cross-env NODE_ENV=test n use 8.11.3 ./build/uploadAliyunCDN.js", "build:test": "npm run check:node && cross-env NODE_ENV=test webpack --progress --config build/webpack.client.conf.js && cross-env NODE_ENV=test node ./build/uploadAliyunCDN.js",
"build:pro": "cross-env NODE_ENV=production webpack --progress --config build/webpack.client.conf.js && cross-env NODE_ENV=production n use 8.11.3 ./build/uploadAliyunCDN.js" "build:pro": "npm run check:node && cross-env NODE_ENV=production webpack --progress --config build/webpack.client.conf.js && cross-env NODE_ENV=production node ./build/uploadAliyunCDN.js",
"check:node": "node build/checkNodeVersion.js"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
...@@ -62,7 +63,9 @@ ...@@ -62,7 +63,9 @@
"webpack": "^4.42.1", "webpack": "^4.42.1",
"webpack-cli": "^3.3.11", "webpack-cli": "^3.3.11",
"webpack-dev-server": "^3.10.3", "webpack-dev-server": "^3.10.3",
"webpack-merge": "^4.2.2" "webpack-merge": "^4.2.2",
"html-replace-webpack-plugin": "^2.5.6",
"semver": "^1.1.4"
}, },
"dependencies": { "dependencies": {
"axios": "^0.19.2", "axios": "^0.19.2",
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论