React 开发微信页面 跳转页面title不刷新的问题?

#1

微信H5 title 只在加载的时候监听一次,之后跳转不会监听title的onChange 看了一些方法用什么iframe没太搞懂 react中也是用这个添加iframe的方法么? 不知道react大神们这里是怎么解决的?

#2

有一个想法,可写个Title的组件,组价接收一个title属性,然后在Title中通过window.document.title = ‘需要显示的title’,每个页面都使用Title组件, ,手动改变title的值,不知道是否可行。。。

#3

要改变这个title值很容易,主要问题是他只在你第一次加载的时候取值,之后你就算重新赋值成功,但他不会取新的值,依旧显示首次加载的值。就很蛋疼~

#4

页面跳转的时候,能否知道render的是哪个页面?比如有A、B、C三个页面, title的值根据路由跳转取到,或直接写死,比如



const A = () => (


this is Page A
);

const B = () => (


This is Page B
);

const Title = ({name}) => {
window.document.title = name;
return null;
};

#5

//////////////////////////////////////

这是首次加载,当你跳转到下一页面的时候呢,

//////////////////////////////////////

你可以看到title数据已经更新了,但是顶部title的显示是只显示首次加载的那个的~

#6

那你试试这个插件,react-document-title,或许可以解决这个问题…

#7

github地址:https://github.com/gaearon/react-document-title

#8

ok, 我看一下,谢了~

#10

也是醉了~搞了一天半,原来那个设置是可以生效的,只不过在微信开发工具里面,是不好用的,到手机端上显示的时候是ok的,真的服,我今天搞了个ngrok 的东西手机实测得出的结果~

#11

… 或许也不用ngrok搭建服务, 可以直接让手机和自己本机连到同一个局域网内,然后微信上直接输入项目地址。

#12

那个我也试了,没搞好,我公司这网也差总断,我是照教程配置了一下,没搞好,主要是我i没找到localhost的网址,怎么在微信内置浏览器打开,他有个网址验证 这个地址过不了,他localhost不显示链接只显示为字符串~

#13

我的意思是,本机与手机在同一局域网,本机IP地址比如为192.168.1.1,则项目地址由localhost:3000/test换为 192.168.1.1:3000/test,将这个地址发给自己微信,这样自己在微信上就可以打开这个地址了…不知道是不是你要的样子…

#14

奥,这个倒是没试过,我懂了~谢啦