javascript vue.js -使用哪个函数来解析接收到的带有vue标签的html片段?

6bc51xsx  于 2023-09-29  发布在  Java
关注(0)|答案(1)|浏览(87)

我的服务器正在从动态数据中呈现一个HTML表,并使用xmlhttprequest将其提供给浏览器。现在,我尝试使用vue.js,问题出现了,是否可以将vue属性添加到表服务器端,例如。@click这样它就可以在浏览器端工作。
当html以普通字符串的形式到达时,我想,我要么必须调用字符串的vue解析函数,要么首先将其添加到DOM中,然后让vue重新解析该子树。
我在这里也说过,但形式更简洁:

  • 浏览器:获取表
  • 服务器:使用table,纯html字符串(带有vue属性)进行响应。
  • Vue函数???使用?

服务器不是node.js,我正在更新一个工作系统。我可以更改服务器代码,但不会更改服务器实现语言。
有什么想法吗?请对初学者友好地回复--这是我使用vue.js框架的第二天。我读了很多,但文档似乎认为后端运行在node.js上是理所当然的。

67up9zun

67up9zun1#

您有几个选择,但我更喜欢自己使用v-html
以编程方式定义一个新组件并设置其template并不困难:Vue的模板编译可能是昂贵的,现代Vue工具试图在TS编译时尽可能多地完成它,并且avoid shipping the template compiler as a runtime dependency。如果您确实选择在运行时使用新模板,请确保您使用的生成在运行时包含编译器。
但是,您可以将服务器端XHTML视为外部的,并使用它来设置v-html指令。您不需要模板编译; Vue只会将其视为不透明HTML的源代码,您可以使用纯JS和DOM函数在事后use normal DOM traversal through a ref添加事件侦听器。
如果我是一个新的开发人员访问你的代码库,我会惊讶地看到你的模板逻辑存在于两个地方(Vue和服务器端)。这不是最不和谐的,但我自然会想知道为什么表不只是通过JSON来让Vue做你显然使用Vue的事情。
尽管如此,让您生成的XHTML发出Vue模板会感觉更奇怪,因为这样一来,您的servlet调用者就必须以与客户端一起工作的方式使用Vue。这种紧密耦合会妨碍XHTML生成器的重用。我认为这是一个支持可重用JSON数据和JS端模板(即都在Vue中)或可重用的XHTML和事后事件监听器(即全部在原始XHTML中),而不是使用servlet作为Vue模板源。

  • 旁注:* 任何时候你插入原始HTML到你的页面,你打开了XSS的大门; Vue的模板是专门用来智能地处理转义的。在将外部HTML作为模板源或不透明的HTML blob包含到渲染中之前,请确保您信任它。

相关问题