Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wzj-java
uni-app
提交
0dfaf75e
U
uni-app
项目概览
wzj-java
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0dfaf75e
编写于
6月 10, 2021
作者:
Q
qiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(mp-toutiao): 修复字节小程序基础库 2.0+ 组件关系错乱的问题 fixed #2651
上级
c5db51ea
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
34 addition
and
19 deletion
+34
-19
src/platforms/mp-toutiao/runtime/wrapper/component-parser.js
src/platforms/mp-toutiao/runtime/wrapper/component-parser.js
+34
-19
未找到文件。
src/platforms/mp-toutiao/runtime/wrapper/component-parser.js
浏览文件 @
0dfaf75e
...
...
@@ -11,34 +11,49 @@ import {
import
parseBaseComponent
from
'
../../../mp-weixin/runtime/wrapper/component-base-parser
'
const
components
=
[]
export
default
function
parseComponent
(
vueOptions
)
{
const
[
componentOptions
,
VueComponent
]
=
parseBaseComponent
(
vueOptions
)
// 基础库 2.0 以上 attached 顺序错乱,按照 created 顺序强制纠正
componentOptions
.
lifetimes
.
created
=
function
created
()
{
components
.
push
(
this
)
}
componentOptions
.
lifetimes
.
attached
=
function
attached
()
{
const
properties
=
this
.
properties
this
.
__lifetimes_attached
=
function
()
{
const
properties
=
this
.
properties
const
options
=
{
mpType
:
isPage
.
call
(
this
)
?
'
page
'
:
'
component
'
,
mpInstance
:
this
,
propsData
:
properties
}
const
options
=
{
mpType
:
isPage
.
call
(
this
)
?
'
page
'
:
'
component
'
,
mpInstance
:
this
,
propsData
:
properties
}
initVueIds
(
properties
.
vueId
,
this
)
initVueIds
(
properties
.
vueId
,
this
)
// 初始化 vue 实例
this
.
$vm
=
new
VueComponent
(
options
)
// 初始化 vue 实例
this
.
$vm
=
new
VueComponent
(
options
)
// 处理$slots,$scopedSlots(暂不支持动态变化$slots)
initSlots
(
this
.
$vm
,
properties
.
vueSlots
)
// 处理$slots,$scopedSlots(暂不支持动态变化$slots)
initSlots
(
this
.
$vm
,
properties
.
vueSlots
)
// 处理父子关系
initRelation
.
call
(
this
,
{
vuePid
:
this
.
_$vuePid
,
mpInstance
:
this
})
// 处理父子关系
initRelation
.
call
(
this
,
{
vuePid
:
this
.
_$vuePid
,
mpInstance
:
this
})
// 触发首次 setData
this
.
$vm
.
$mount
()
// 触发首次 setData
this
.
$vm
.
$mount
()
}
let
component
=
this
while
(
component
&&
component
.
__lifetimes_attached
&&
components
[
0
]
&&
component
===
components
[
0
])
{
components
.
shift
()
component
.
__lifetimes_attached
()
component
=
components
[
0
]
}
}
// ready 比 handleLink 还早,初始化逻辑放到 handleLink 中
...
...
@@ -47,4 +62,4 @@ export default function parseComponent (vueOptions) {
componentOptions
.
methods
.
__l
=
handleLink
return
componentOptions
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录