Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
m0_68066342
uni-app
提交
2fc06b03
U
uni-app
项目概览
m0_68066342
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2fc06b03
编写于
5月 28, 2021
作者:
D
DCloud_LXH
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(mp-baidu): usingSwanComponents 和 usingComponents 若两者同时存在,导致代码上传报错 fixed #2652
上级
746905dc
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
27 addition
and
15 deletion
+27
-15
packages/webpack-uni-mp-loader/lib/plugin/generate-json.js
packages/webpack-uni-mp-loader/lib/plugin/generate-json.js
+27
-15
未找到文件。
packages/webpack-uni-mp-loader/lib/plugin/generate-json.js
浏览文件 @
2fc06b03
...
@@ -15,7 +15,17 @@ const EMPTY_COMPONENT = 'Component({})'
...
@@ -15,7 +15,17 @@ const EMPTY_COMPONENT = 'Component({})'
const
usingComponentsMap
=
{}
const
usingComponentsMap
=
{}
function
analyzeUsingComponents
()
{
// 百度小程序动态组件库 usingSwanComponents 引用组件
const
mpBaiduDynamicLibs
=
[
'
dynamicLib://editorLib/editor
'
,
'
dynamicLib://echartsLib/chart
'
,
'
dynamicLib://myModelviewer/modelviewer
'
,
'
dynamicLib://myDynamicLib/panoviewer
'
,
'
dynamicLib://myDynamicLib/spintileviewer
'
,
'
dynamicLib://myDynamicLib/vrvideo
'
]
function
analyzeUsingComponents
()
{
if
(
!
process
.
env
.
UNI_OPT_SUBPACKAGES
)
{
if
(
!
process
.
env
.
UNI_OPT_SUBPACKAGES
)
{
return
return
}
}
...
@@ -85,7 +95,7 @@ function analyzeUsingComponents () {
...
@@ -85,7 +95,7 @@ function analyzeUsingComponents () {
// }, {})
// }, {})
}
}
function
normalizeUsingComponents
(
file
,
usingComponents
)
{
function
normalizeUsingComponents
(
file
,
usingComponents
)
{
const
names
=
Object
.
keys
(
usingComponents
)
const
names
=
Object
.
keys
(
usingComponents
)
if
(
!
names
.
length
)
{
if
(
!
names
.
length
)
{
return
usingComponents
return
usingComponents
...
@@ -97,7 +107,7 @@ function normalizeUsingComponents (file, usingComponents) {
...
@@ -97,7 +107,7 @@ function normalizeUsingComponents (file, usingComponents) {
return
usingComponents
return
usingComponents
}
}
module
.
exports
=
function
generateJson
(
compilation
)
{
module
.
exports
=
function
generateJson
(
compilation
)
{
analyzeUsingComponents
()
analyzeUsingComponents
()
const
jsonFileMap
=
getChangedJsonFileMap
()
const
jsonFileMap
=
getChangedJsonFileMap
()
...
@@ -130,14 +140,16 @@ module.exports = function generateJson (compilation) {
...
@@ -130,14 +140,16 @@ module.exports = function generateJson (compilation) {
const
value
=
usingComponents
[
key
]
const
value
=
usingComponents
[
key
]
if
(
value
.
includes
(
'
://
'
))
{
if
(
value
.
includes
(
'
://
'
))
{
/**
/**
*
百度小程序部分
组件(如:editor)使用‘usingSwanComponents’ 引入
*
部分动态库
组件(如:editor)使用‘usingSwanComponents’ 引入
* 部分组件(如:swan-sitemap-list)使用'usingComponents'引入
* 部分
动态库
组件(如:swan-sitemap-list)使用'usingComponents'引入
*
经测试,两者保留都不会报错,因此去除以下 delete 语句
*
做白名单机制
*/
*/
// delete usingComponents[key]
if
(
mpBaiduDynamicLibs
.
includes
(
value
))
{
delete
usingComponents
[
key
]
jsonObj
.
usingSwanComponents
=
jsonObj
.
usingSwanComponents
||
{}
jsonObj
.
usingSwanComponents
=
jsonObj
.
usingSwanComponents
||
{}
jsonObj
.
usingSwanComponents
[
key
]
=
value
jsonObj
.
usingSwanComponents
[
key
]
=
value
}
}
}
})
})
}
}
...
@@ -168,10 +180,10 @@ module.exports = function generateJson (compilation) {
...
@@ -168,10 +180,10 @@ module.exports = function generateJson (compilation) {
scopedSlotComponents
.
forEach
(
scopedSlotComponent
=>
{
scopedSlotComponents
.
forEach
(
scopedSlotComponent
=>
{
compilation
.
assets
[
scopedSlotComponent
]
=
{
compilation
.
assets
[
scopedSlotComponent
]
=
{
size
()
{
size
()
{
return
Buffer
.
byteLength
(
scopedSlotComponentJsonSource
,
'
utf8
'
)
return
Buffer
.
byteLength
(
scopedSlotComponentJsonSource
,
'
utf8
'
)
},
},
source
()
{
source
()
{
return
scopedSlotComponentJsonSource
return
scopedSlotComponentJsonSource
}
}
}
}
...
@@ -203,20 +215,20 @@ module.exports = function generateJson (compilation) {
...
@@ -203,20 +215,20 @@ module.exports = function generateJson (compilation) {
!
compilation
.
assets
[
jsFile
]
!
compilation
.
assets
[
jsFile
]
)
{
)
{
const
jsFileAsset
=
{
const
jsFileAsset
=
{
size
()
{
size
()
{
return
Buffer
.
byteLength
(
EMPTY_COMPONENT
,
'
utf8
'
)
return
Buffer
.
byteLength
(
EMPTY_COMPONENT
,
'
utf8
'
)
},
},
source
()
{
source
()
{
return
EMPTY_COMPONENT
return
EMPTY_COMPONENT
}
}
}
}
compilation
.
assets
[
jsFile
]
=
jsFileAsset
compilation
.
assets
[
jsFile
]
=
jsFileAsset
}
}
const
jsonAsset
=
{
const
jsonAsset
=
{
size
()
{
size
()
{
return
Buffer
.
byteLength
(
source
,
'
utf8
'
)
return
Buffer
.
byteLength
(
source
,
'
utf8
'
)
},
},
source
()
{
source
()
{
return
source
return
source
}
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录