我有一个路由设置,它使用动态HTML模板进行响应。Golang在等待数据加载时显示静态HTML模板

package main 

import (
    "net/http" 
    "html/template" 
) 

func index(w http.ResponseWriter, r *http.Request) { 
    showWwResult, _ := GetWw() 
    showHoursResult, _ := GetHours() 

    type Data struct { 
     ShowWwResult []IssueResult 
     ShowHoursResult Page 
    } 

    data := Data{showWwResult, showHoursResult} 

    var templates = template.Must(template.ParseFiles("templates/index.html", "templates/ww.html", "templates/hours.html")) 
    templates.ExecuteTemplate(w, "indexPage", data) 
} 

我的问题是,它需要很长时间才能收集数据,并且页面在呈现HTML之前等待它返回。

GetWw()GetHours()ShowWwResultShowHoursResult

2017-07-26 Evan Hessler

+0

我认为你可以做的最好的是提供一个“请稍候”的重定向页面,但我不是一个HTTP专家...... –