为了账号安全,请及时绑定邮箱和手机立即绑定

Revel 中的嵌套模板未正确加载

Revel 中的嵌套模板未正确加载

Go
PIPIONE 2022-03-07 22:52:17
当我调用嵌套模板时{{template "partials/mirror.html" .}},它会引发此错误:results.go:232: Template Execution Error (in App/index.html): html/template:App/index.html: "\"" in attribute name: " class\"quote-component\" id=\"quot"App/index.html如果我专门为正在调用的模板创建一个控制器,如下所示:package controllersimport "github.com/revel/revel"type Mirror struct {    *revel.Controller}func (m Mirror) Index() revel.Result {    return m.Render()}我仍然得到:results.go:232: Template Execution Error (in Mirror/index.html): html/template:Mirror/index.html: "\"" in attribute name: " class\"quote-component\" id=\"quot"以下是 的内容mirror.html:<!-- AUTH STATES --><section class="auth-states">  <!-- FACE DETECTED W/IN RANGE -->  {{template "partials/faceClose.html" .}}  <!-- USER DETECTED -->  {{template "partials/userDetected.html" .}}  <!-- NON USER DETECTED -->  {{template "partials/nonUserDetected.html" .}}  <!-- TIME OUT LOGS USER OUT -->  {{template "partials/loggingOut.html" .}}</section><div class="clear eyelevel">  <!-- WEATHER-->  {{template "partials/weather.html" .}}  <!-- TIMELY CONTENT: TIMESTAMP AND ALERTS -->  <div class="timely-content">    <!-- TIMESTAMP -->    {{template "partials/timestamp.html" .}}   <!-- EMOTION -->   {{template "partials/emotion.html" .}}  </div></div><img id="shot-preview"/><!-- LOW PRIORITY CONTENT --><section class="low-pri-content auth-content">  <h2 class="logged-in-stamp">    Here's the scoop, <span id="logged-in-name"></span>:  </h2>  {{template "partials/traffic.html" .}}  {{template "partials/stocks.html" .}}  {{template "partials/newsFeed.html" .}}</section><div id="video-hidden" aria-hidden="true">  <video id="cameraPreview" class="cameraPreview"></video></div>应用程序的结构遵循 Revel 建议,项目本身只是使用 Revel将该项目从 Node 迁移到 Go。我的问题是:该错误消息是什么意思?它总是加载mirror.html文件的前 4 行,不管前 4 行是什么。
查看完整描述

1 回答

?
收到一只叮咚

TA贡献1821条经验 获得超4个赞

错误不在mirror.html但在index.html:


results.go:232: 模板执行错误(在Mirror/index.html中):html/template:Mirror/index.html: "\"" in attribute name: "class\"quote-component\" id=\"quot "


'='在指定某些元素的属性时,您只是省略了等号class,例如您写道:


<span class"quote-component" id="quot">...

看这个简单的例子来验证:


const templ = `<html><body>

        <span class"quote-component" id="quot">Bad syntax</span>

        </body></html>`


t := template.Must(template.New("").Parse(templ))

err := t.Execute(os.Stdout, nil)

fmt.Println(err)

输出:几乎和你的一样(在Go Playground上试试):


html/template: "\"" in attribute name: " class\"quote-component\" id=\"quot"


查看完整回答
反对 回复 2022-03-07
  • 1 回答
  • 0 关注
  • 133 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信