【问题标题】:Vue.js Server Side Rendering: document is not definedVue.js 服务器端渲染:文档未定义
【发布时间】:2017-05-06 10:26:17
【问题描述】:

我正在使用一个使用documentwindow 的包。我想让我的网站在不更改太多代码的情况下进行服务器端渲染。对于window is not defined,我使用window-or-global (https://www.npmjs.com/package/window-or-global),它解决了我的问题。

然而,当谈到document,我实际上并没有发现任何有用的东西。我的想法是尝试找出服务器或客户端何时呈现。我只会在客户端渲染时使用document 执行代码。有什么办法吗?

P/S:我使用的是 Vue.js 2.0。我使用的包是fine-uploader (https://www.npmjs.com/package/fine-uploader)

【问题讨论】:

    标签: javascript dom vue.js server-side-rendering


    【解决方案1】:

    我也在一个新项目中使用Vue服务器端渲染,针对这种问题我做的是检查我是在浏览器环境中还是在服务器环境中使用:

    if (typeof window !== 'undefined') {
        // We are in the browser
    }
    

    【讨论】:

      【解决方案2】:

      你可以使用

      const Vue = require('vue');
      Vue.prototype.$isServer
      

      或来自组件内

      this.$isServer
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-07-16
        • 1970-01-01
        • 1970-01-01
        • 2021-02-22
        • 1970-01-01
        • 2020-11-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多