Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.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 JS应用程序中带有API响应数据的标记_Javascript_Vue.js_Nuxt.js - Fatal编程技术网

Javascript 在内部注入动态内容<;头>;Nuxt JS应用程序中带有API响应数据的标记

Javascript 在内部注入动态内容<;头>;Nuxt JS应用程序中带有API响应数据的标记,javascript,vue.js,nuxt.js,Javascript,Vue.js,Nuxt.js,我目前正在开发一个NUXT应用程序,需要在所选页面的部分中添加一些动态内容。需要插入页面的内容来自应用程序最初启动时的一次性API响应(nuxtServerInit)。这将依次存储在VUEX中 [{ pages:['index','home','..',....], script:'<script>....</script><script>...</script>,<link href="someCss.css</link&

我目前正在开发一个NUXT应用程序,需要在所选页面的
部分中添加一些动态内容。需要插入页面
的内容来自应用程序最初启动时的一次性API响应(nuxtServerInit)。这将依次存储在VUEX中

[{
   pages:['index','home','..',....],
   script:'<script>....</script><script>...</script>,<link href="someCss.css</link>"'
},
{
   pages:['about','..',...],
   script:'<script>....</script><script>...</script>,<link href="someOtherCss.css</link>"'
}]
但问题是键脚本包含脚本、外部链接和元信息,这些应该直接在
标记中使用。所以,为了使用NUXT head()函数,这些解析逻辑需要写入函数getScriptsForDisplay()中。如果我们可以直接将脚本中的任何内容添加到
标记中,这将非常方便

还有比这更好/更聪明的方法吗


更新-
应该在装入页面之前填充(用于搜索引擎优化),因此我们不应该使用客户端DOM操作方法

您是否尝试过基本的DOM技术,例如:

  document.head.appendChild
和或:

 document.head.removeChild
从现有节点或根元素添加和删除节点的内置函数方法

这是在预处理JSON响应并将html标记创建\解析为html元素之后

  • 由于应用程序从nuxt server init获取数据,因此您可以将该信息存储为内部nuxt状态的一部分(例如,通过vuex传递该数据),并根据页面状态更新头部

  • 或者,您可以利用asyncdata(用于在创建页面之前调用远程API)。这对于SSR在创建页面之前动态更改数据非常有用。通过这种方式,您可以根据asyncData具有配置时设置的任何内容设置头脚本


  • script
    属性只是一个大字符串吗?Yes script属性包含所有脚本、外部CSS链接、元信息,这些信息应该包含在head标记中,而不包含任何内容separators@Ifaruki我更新了问题,,现在请看一下剧本property@KiranMuralee因此,您的脚本数据是html流?@Bekimbaaj脚本数据是需要放在标记内/附加到标记的数据不能在此处使用document.head.appendChild,因为在安装组件之前应填写是的,我同意我知道我可以使用NUXT head()函数更新头部数据,但为此,我需要分离脚本、外部css、元信息等(因为head函数以结构化格式接收数据)。我在问是否有一种简单的方法可以做到这一点
     document.head.removeChild