Javascript handlebar.js及时加载预编译模板

Javascript handlebar.js及时加载预编译模板,javascript,jquery,templates,handlebars.js,precompile,Javascript,Jquery,Templates,Handlebars.js,Precompile,我在我的一个项目中使用把手,我想加快加载时间。现在,HTML页面中有一些预编译的把手模板。因此,浏览器加载模板,即使它可能不需要它们。 为了加快速度,我希望这些预编译的javascript模板能够及时加载。这意味着,当用户单击按钮时,我希望浏览器从服务器请求必要的数据,而不是更早。这将减少服务器负载并提高页面速度,因为用户需要该按钮的可能性很低 我的问题是:如何从服务器加载数据?我看过很多教程使用的模板不是预先编译的,只是加载一个HTML文件并在浏览器中编译,但是如何加载由Handlebar生成

我在我的一个项目中使用把手,我想加快加载时间。现在,HTML页面中有一些预编译的把手模板。因此,浏览器加载模板,即使它可能不需要它们。 为了加快速度,我希望这些预编译的javascript模板能够及时加载。这意味着,当用户单击按钮时,我希望浏览器从服务器请求必要的数据,而不是更早。这将减少服务器负载并提高页面速度,因为用户需要该按钮的可能性很低

我的问题是:如何从服务器加载数据?我看过很多教程使用的模板不是预先编译的,只是加载一个HTML文件并在浏览器中编译,但是如何加载由Handlebar生成的脚本呢

一些代码:

$("#select-server-button").on "click", ->
    # Load template file located in /static/templates/myTemplate.js
    myTemplate = Handlebars.templates['myTemplate'];

在页面中添加额外的模板不应降低页面加载速度,除非您正在谈论大量未使用的模板。简而言之,100kb页面的加载速度与20kb页面的加载速度大致相同。。。您只需使用jQuery.load将html从另一个文件添加到页面中即可。@dandavis好的,这些模板不在页面中,它们是外部文件template1.handlebar或预混合后的template1.js。如果我把这些模板放在HTML页面中,而不是作为外部资源,那么,你是对的。但是所有的模板都是预编译的,因此在需要加载的外部文件中。啊,我明白了。在看不到任何代码的情况下,我们所能做的就是猜测那些东西。您可能需要将代码从就绪事件移动到滚动或单击事件,但当您安排加载时,如何首先加载它很重要。@dandavis代码还不多,但我添加了它。问题可能看起来更复杂:我只是想从我的服务器加载一个预编译的模板,例如/static/templates/myTemplate.js。我应该提到,我对Javascript Coffeescript不是很有经验,我尽可能少地使用Javascript。