首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

[前端] Nuxt 服务器渲染,有大佬遇过浏览器当前页面刷新,不执行 asyncData 方法的吗?(非 query 的问题)

  •  1
     
  •   dan666 · 149 天前 · 1026 次点击
    这是一个创建于 149 天前的主题,其中的信息可能已经有所发展或是发生改变。

    (哭了,留下了不学无术的泪水)

    7 回复  |  直到 2019-07-10 12:02:10 +08:00
        1
    dan666   149 天前
    (已经各种查过方法了)
        2
    jimliang   149 天前   ♥ 1
    服务端渲染的话,界面首次渲染是在服务端进行,你应该看 asyncData 有没有在服务端执行。
        3
    dan666   149 天前
    @jimliang 我留意到是这样
    触发 asyncData 刷新:
    ( 1 )线上构建后第一次访问;
    ( 2 )页面内部 nuxtLink 跳转访问。
    不触发 asyncData 刷新:
    ( 1 )手动输入地址到地址栏内访问
    ( 2 )当前有 asyncData 的页面手动 reload
        4
    ZY2071   149 天前   ♥ 1
    翻了下以前写的代码,用 process.server 存在与否做一个判断来切换一下接口地址,函数是执行的,只是报错蹦了。
        5
    dan666   149 天前
    @ZY2071
    大佬,小弟愚钝,get 不到点,现在用的都是同一个接口地址( http ),切换成什么样的接口地址才不会崩溃呢?
    然后为什么 nuxtLink 切换的话,就不会“崩”呢?
    现在用的是相对路径的写法。
    我思考下 orz
        6
    dan666   149 天前
    @ZY2071 人间喜剧!居然,居然,写死了 url 就可以了!
    哇!
    哇!
    哇!
    陷入了人身大思考!
        7
    jimliang   148 天前   ♥ 1
    我猜楼主肯定是没处理服务端渲染时调用接口时的情况,这时候是服务端环境而不是浏览器环境,注意不要用相对路径。而且要把 cookie 带过去,否则首次渲染时识别不了用户身份,无法登录。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2001 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 22ms · UTC 00:23 · PVG 08:23 · LAX 16:23 · JFK 19:23
    ♥ Do have faith in what you're doing.