我看源码里面也是获取$holder来设置title的
但是这段代码在手机上就是没用。
用uni.setNavigationBar 又可以生效。求高手指点。
function setNavigationBar (type, args) {
const pages = getCurrentPages()
if (pages.length) {
const page = pages[pages.length - 1].$holder
switch (type) {
case 'setNavigationBarColor':
const {
frontColor,
backgroundColor,
animation
} = args
const {
duration,
timingFunc
} = animation
if (frontColor) {
page.navigationBar.textColor = frontColor === '#000000' ? 'black' : 'white'
}
if (backgroundColor) {
page.navigationBar.backgroundColor = backgroundColor
}
page.navigationBar.duration = duration + 'ms'
page.navigationBar.timingFunc = timingFunc
break
case 'showNavigationBarLoading':
page.navigationBar.loading = true
break
case 'hideNavigationBarLoading':
page.navigationBar.loading = false
break
case 'setNavigationBarTitle':
const {
title
} = args
page.navigationBar.titleText = title
if (__PLATFORM__ === 'h5') {
document.title = title
}
break
}
}
return {}
}
4 个回复
c***@163.com (作者)
通过分析源码,发现H5和app plus分走两个不同的方法获取内容。
自己写了一个方法获取title。 建议官方下个版本补一个这个函数进api。
c***@163.com (作者)
我看源码里面也是获取$holder来设置title的
但是这段代码在手机上就是没用。
用uni.setNavigationBar 又可以生效。求高手指点。
飞鱼Sss - 飞鱼Sss介绍
不行~
w***@foxmail.com
今年开发银联小程序,想要动态设置标题,用你的方式完美结局,感谢大佬