提交 9756ca59 编写于 作者: fxy060608's avatar fxy060608

feat: pages style with app | web

上级 b640debf
......@@ -31,24 +31,40 @@ function getAssetsCopyOption (from, options = {}) {
)
}
}
function addIgnore (ignore, platform) {
if (CopyWebpackPluginVersion > 5) {
if (platform === 'app-plus') {
ignore.push(`${process.env.UNI_INPUT_DIR.replace(/\\/g, '/')}/static/app/**/*`)
} else if (platform === 'h5') {
ignore.push(`${process.env.UNI_INPUT_DIR.replace(/\\/g, '/')}/static/web/**/*`)
}
ignore.push(`${process.env.UNI_INPUT_DIR.replace(/\\/g, '/')}/static/${platform}/**/*`)
} else {
if (platform === 'app-plus') {
ignore.push('app/**/*')
} else if (platform === 'h5') {
ignore.push('web/**/*')
}
ignore.push(platform + '/**/*')
}
}
// 暂未考虑动态添加static目录
function getAssetsCopyOptions (assetsDir) {
const ignore = []
global.uniPlugin.platforms.forEach(platform => {
if (global.uniPlugin.name !== platform) {
if (CopyWebpackPluginVersion > 5) {
ignore.push(`${process.env.UNI_INPUT_DIR.replace(/\\/g, '/')}/static/${platform}/**/*`)
} else {
ignore.push(platform + '/**/*')
}
addIgnore(ignore, platform)
}
})
const copyOptions = []
// 主包静态资源
const mainAssetsCopyOption = getAssetsCopyOption(assetsDir, CopyWebpackPluginVersion > 5 ? {
globOptions: { ignore }
globOptions: {
ignore
}
} : {
ignore
})
......@@ -59,7 +75,9 @@ function getAssetsCopyOptions (assetsDir) {
process.UNI_SUBPACKAGES &&
Object.keys(process.UNI_SUBPACKAGES).forEach(root => {
const subAssetsCopyOption = getAssetsCopyOption(path.join(root, assetsDir), CopyWebpackPluginVersion > 5 ? {
globOptions: { ignore }
globOptions: {
ignore
}
} : {
ignore
})
......@@ -124,4 +142,4 @@ function getCopyWebpackPluginOptions (platformOptions, vueOptions) {
module.exports = {
assetsDir,
getCopyWebpackPluginOptions
}
}
......@@ -69,8 +69,8 @@ const getPageComponents = function (inputDir, pagesJson) {
Object.assign(
globalStyle,
globalStyle['app-plus'] || {},
globalStyle.h5 || {}
globalStyle.app || globalStyle['app-plus'] || {},
globalStyle.web || globalStyle.h5 || {}
)
if (process.env.UNI_SUB_PLATFORM) {
......@@ -99,7 +99,7 @@ const getPageComponents = function (inputDir, pagesJson) {
}
}
// 解析 titleNView,pullToRefresh
const h5Options = Object.assign({}, props['app-plus'] || {}, props.h5 || {})
const h5Options = Object.assign({}, props.app || props['app-plus'] || {}, props.web || props.h5 || {})
if (process.env.UNI_SUB_PLATFORM) {
Object.assign(h5Options, props[process.env.UNI_SUB_PLATFORM] || {})
......@@ -123,33 +123,31 @@ const getPageComponents = function (inputDir, pagesJson) {
always: 'float'
}
let titleNView = pageStyle.titleNView
titleNView = Object.assign(
{},
{
type: pageStyle.navigationStyle === 'custom' ? 'none' : 'default'
},
pageStyle.transparentTitle in titleNViewTypeList
? {
type: titleNViewTypeList[pageStyle.transparentTitle],
backgroundColor: 'rgba(0,0,0,0)'
titleNView = Object.assign({}, {
type: pageStyle.navigationStyle === 'custom' ? 'none' : 'default'
},
pageStyle.transparentTitle in titleNViewTypeList ? {
type: titleNViewTypeList[pageStyle.transparentTitle],
backgroundColor: 'rgba(0,0,0,0)'
}
: null,
typeof titleNView === 'object'
? titleNView
: (
typeof titleNView === 'boolean' ? {
type: titleNView ? 'default' : 'none'
}
: null,
typeof titleNView === 'object'
? titleNView
: (
typeof titleNView === 'boolean'
? {
type: titleNView ? 'default' : 'none'
}
: null
)
: null
)
)
if (titleNView.type === 'none' || titleNView.type === 'transparent') {
windowTop = 0
}
// 删除 app-plus 平台配置
delete props.app
delete props['app-plus']
delete props.web
delete props.h5
if (process.env.UNI_SUB_PLATFORM) {
......@@ -466,4 +464,4 @@ ${genRegisterPageVueComponentsCode(pageComponents)}
global.__uniRoutes=[${genPageRoutes(pageComponents).concat(genSystemRoutes()).join(',')}]
global.UniApp && new global.UniApp();
`
}
}
......@@ -68,7 +68,13 @@ function parseStyle (style = {}, root = '') {
Object.keys(style).forEach(name => {
if (PLATFORMS.includes(name)) {
if (name === process.env.UNI_PLATFORM) {
platformStyle = style[name] || {}
if (name === 'app-plus') {
platformStyle = style.app || style[name] || {}
} else if (name === 'h5') {
platformStyle = style.web || style[name] || {}
} else {
platformStyle = style[name] || {}
}
}
delete style[name]
}
......@@ -153,4 +159,4 @@ module.exports = {
parseTabBar,
trimMPJson,
NON_APP_JSON_KEYS
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册