Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Nuxt/Vue—它生成的html和js文件_Javascript_Vue.js_Nuxt.js - Fatal编程技术网

Javascript Nuxt/Vue—它生成的html和js文件

Javascript Nuxt/Vue—它生成的html和js文件,javascript,vue.js,nuxt.js,Javascript,Vue.js,Nuxt.js,我刚开始使用Nuxt进行服务器端渲染。这似乎是一个很好的框架。但我不喜欢它,因为它会生成很多难看的html标记、js链接,css基本上是直接转储到html中的。此外,您还可以看到大量的数据。看来你根本无法控制它们,这让我很担心!。例如: <!DOCTYPE html> <html data-n-head-ssr data-n-head=""> <head> <meta data-n-head="true" charset="utf-8"/&g

我刚开始使用Nuxt进行服务器端渲染。这似乎是一个很好的框架。但我不喜欢它,因为它会生成很多难看的html标记、js链接,css基本上是直接转储到html中的。此外,您还可以看到大量的数据。看来你根本无法控制它们,这让我很担心!。例如:

<!DOCTYPE html>
<html data-n-head-ssr data-n-head="">
  <head>
    <meta data-n-head="true" charset="utf-8"/><meta data-n-head="true" name="viewport" content="width=device-width, initial-scale=1"/><meta data-n-head="true" data-hid="description" name="description" content="Nuxt.js project"/><title data-n-head="true">Users</title><link data-n-head="true" rel="icon" type="image/x-icon" href="/favicon.ico"/><link rel="preload" href="/_nuxt/manifest.1dd9a3883f67d40b9aa7.js" as="script"><link rel="preload" href="/_nuxt/common.992cf40ea79f7d7937d8.js" as="script"><link rel="preload" href="/_nuxt/app.2d1407798eb328e5c249.js" as="script"><link rel="preload" href="/_nuxt/layouts/default.1360f17fdf8a6083917d.js" as="script"><link rel="preload" href="/_nuxt/pages/users.a5ea843f780a24b7dfd7.js" as="script"><link rel="prefetch" href="/_nuxt/pages/index.3c2e71cd997494896cb8.js"><link rel="prefetch" href="/_nuxt/pages/users-name.353da70d66b2cb18c1c9.js"><link rel="prefetch" href="/_nuxt/pages/about.7e9c73cd5e6253d976d6.js"><link rel="prefetch" href="/_nuxt/layouts/dark.9d852c7e76764cd94b7c.js"><link rel="prefetch" href="/_nuxt/pages/tasks.67c8259c9b53f68ea9a3.js"><style data-vue-ssr-id="5e853cdc:0">body,html{background-color:#fff;color:#000;letter-spacing:.5px;font-family:Source Sans Pro,Arial,sans-serif;height:100vh;margin:0}footer{padding:20px;text-align:center;border-top:1px solid #ddd}a,a:focus,a:hover,a:visited{color:#000}.logo{width:100%;height:auto;max-width:400px;max-height:289px}.layout-enter-active,.layout-leave-to{-webkit-transition:opacity .5s;transition:opacity .5s}.layout-enter,.layout-leave-to{opacity:0}</style><style data-vue-ssr-id="c6f373dc:0">.progress[data-v-5b643829]{position:fixed;top:0;left:0;right:0;height:2px;width:0;-webkit-transition:width .2s,opacity .4s;transition:width .2s,opacity .4s;opacity:1;background-color:#efc14e;z-index:999999}</style><style data-vue-ssr-id="59c3f703:0">.title[data-v-2941d5fc]{margin:30px 0}.users[data-v-2941d5fc]{list-style:none;margin:0;padding:0}.user[data-v-2941d5fc]{margin:10px 0}</style>
  </head>
  <body data-n-head="">
    <div id="__nuxt" data-server-rendered="true"><div class="progress" style="width:0%;height:2px;background-color:black;opacity:0;" data-v-5b643829></div><section class="container" data-v-2941d5fc><img src="/_nuxt/img/logo.a04e995.png" alt="Nuxt.js Logo" class="logo" data-v-2941d5fc><h1 class="title" data-v-2941d5fc>
    USERS
  </h1><ul class="users" data-v-2941d5fc><li class="user" data-v-2941d5fc><a href="/users/jona" data-v-2941d5fc>
        jona
      </a></li><li class="user" data-v-2941d5fc><a href="/users/jon" data-v-2941d5fc>
        jon
      </a></li><li class="user" data-v-2941d5fc><a href="/users/jonas" data-v-2941d5fc>
        jonas
      </a></li></ul></section></div><script type="text/javascript">window.__NUXT__={"layout":"default","data":[{"users":[{"_id":"59a53db03a35535198135b15","id":null,"name":"jona"},{"_id":"59a53ded3a35535198135b17","id":null,"name":"jon"},{"_id":"59a574afd5bc922f3dbf8b68","id":null,"name":"jonas"}]}],"error":null,"serverRendered":true};</script><script src="/_nuxt/manifest.1dd9a3883f67d40b9aa7.js" defer></script><script src="/_nuxt/layouts/default.1360f17fdf8a6083917d.js" defer></script><script src="/_nuxt/pages/users.a5ea843f780a24b7dfd7.js" defer></script><script src="/_nuxt/common.992cf40ea79f7d7937d8.js" defer></script><script src="/_nuxt/app.2d1407798eb328e5c249.js" defer></script>
  </body>
</html>
这对我来说简直太难看了:

<div id="__nuxt" data-server-rendered="true"><div class="progress" style="width:0%;height:2px;background-color:black;opacity:0;" data-v-5b643829></div><section class="container" data-v-2941d5fc>
为什么我需要id=\uuuuNuxt

如何将所有js文件构建到一个文件中?不确定这是否可行

我怎么能不把整个css嵌入html呢

这将如何影响SEO?

数据-v-*属性

如果使用作用域CSS,则它们来自vue CSS加载程序

为什么我需要id=\uuuuNuxt

因为它将Vue app装载到DOM元素

如何将所有js文件构建到一个文件中?不确定这是否可行

你为什么要那样做?Nuxt试图帮助您避免性能问题。这就是它分开的原因

我怎么能不把整个css嵌入html呢

您可以提取css检查文档,但它会提取常见的css,而不是所有css

这将如何影响搜索引擎优化

不会的

-

您可以尝试为您的需要扩展webpack配置绑定js、提取css等。。看看这本书

编辑:您还可以检查其他流行的框架,如或。他们都在努力遵循最佳实践。服务器端呈现的输出并不意味着非常真实,它是故意被丑化的。

data-v-*属性

如果使用作用域CSS,则它们来自vue CSS加载程序

为什么我需要id=\uuuuNuxt

因为它将Vue app装载到DOM元素

如何将所有js文件构建到一个文件中?不确定这是否可行

你为什么要那样做?Nuxt试图帮助您避免性能问题。这就是它分开的原因

我怎么能不把整个css嵌入html呢

您可以提取css检查文档,但它会提取常见的css,而不是所有css

这将如何影响搜索引擎优化

不会的

-

您可以尝试为您的需要扩展webpack配置绑定js、提取css等。。看看这本书


编辑:您还可以检查其他流行的框架,如或。他们都在努力遵循最佳实践。服务器端呈现的输出并不意味着非常真实,它是故意丑化的。

谢谢您的回答。如果我能做到这一点,我会喜欢它的html缩小:-d我选择Nuxt的原因是我不喜欢它。在React中编写代码非常难看。@teelou这在某种程度上取决于,因为当模块变得太大时,也会对性能产生负面影响,所以我们将它们拆分为几个较小的请求,以避免此类问题。@teelou我认为将所有js文件缩小和丑化为一个文件在性能上更好,正如@nblackburn所说的,这取决于我建议您阅读:作者addyosmani。@teelou Next和Gatbsy是关于SSR输出的示例。他们有类似Nuxt的smiliar输出。谢谢你的回答。如果我能做到这一点,我会喜欢它的html缩小:-d我选择Nuxt的原因是我不喜欢它。在React中编写代码非常难看。@teelou这在某种程度上取决于,因为当模块变得太大时,也会对性能产生负面影响,所以我们将它们拆分为几个较小的请求,以避免此类问题。@teelou我认为将所有js文件缩小和丑化为一个文件在性能上更好,正如@nblackburn所说的,这取决于我建议您阅读:作者addyosmani。@teelou Next和Gatbsy是关于SSR输出的示例。他们有像Nuxt这样的小输出。