vue.js - SSR index.html 编译
问题描述
我正在使用 Go + VueJS 堆栈,但遇到了 SSR 问题。
我用 GO 预编译 index.html 以创建元标记(使用 html/模板)
{{ range index . "metaTags" }}
<meta {{.Key |safe }}='{{ .Name }}' {{ .Type |safe }}='{{ .Content }}' data-vue-router-controlled />
{{ end }}
但是当我用 VueJS 编译时 index.html 是变量设置为小写,所以 Go 无法设置变量。前任。键改为键。
解决办法是什么?
解决方案
解决方法是将 html 生成传递给函数,因此 html 文件被替换为
{{ range $el := index . "metaTags" }}
{{$el|meta}}
{{ end }}
我们注册一个函数来创建 HTML
template.FuncMap{
"meta": func(s api.Tag) template.HTML {
return template.HTML("<meta " + s.Key + "=\"" + s.Name + "\" " + s.Type + "=\"" + s.Content + "\" data-vue-router-controlled />")
},
}
结构
type Tag struct {
Key string `json:"key"`
Name string `json:"name"`
Type string `json:"type"`
Content string `json:"content"`
}
推荐阅读
- amazon-web-services - Step 函数中数组的第一个元素通过状态
- javascript - 如何调用组件道具的方法 - VueJS?
- r - R代码将单列中的坐标分成纬度和经度两列
- python - Dask:“DataFrame”对象没有属性“_meta”
- javascript - 如何设置 onChange 处理程序以监视从 React 中的对象数组动态呈现的输入字段的变化
- java - 在 Spring 上下文中使用 LocalDate 并避免 CGLib 问题
- postgresql - Navicat 和 DBeaver 之间的 postgresql 时区差异
- java - Jsp Servlets Active Directory 联合服务 (ADFS)。微软代码有问题?
- javascript - 如何存储 HTML 下拉列表(
- electron - 未找到模块:错误:无法解析 'fs' - Electron