Javascript 从单独的文件加载下划线.js模板
我目前在一个项目中使用underline.js作为模板,模板以文本/模板类型存储在脚本标记中,并按id加载。我想知道是否可以继续使用相同的系统,但将模板移动到单独的文件中 我能想到的唯一方法是在一个单独的文件中将模板声明为全局变量,但这看起来很难看Javascript 从单独的文件加载下划线.js模板,javascript,underscore.js,templating,Javascript,Underscore.js,Templating,我目前在一个项目中使用underline.js作为模板,模板以文本/模板类型存储在脚本标记中,并按id加载。我想知道是否可以继续使用相同的系统,但将模板移动到单独的文件中 我能想到的唯一方法是在一个单独的文件中将模板声明为全局变量,但这看起来很难看 注意:我不想在部署时使用Jammit或其他构建系统将所有内容合并到一个文件中,不知道是否有其他解决方案。我个人使用RequireJS将模板加载到模块中,但如果您正在寻找其他内容,可以使用Ajax 只要模板位于同一个域上,就可以通过ajax获得它们 要
注意:我不想在部署时使用Jammit或其他构建系统将所有内容合并到一个文件中,不知道是否有其他解决方案。我个人使用RequireJS将模板加载到模块中,但如果您正在寻找其他内容,可以使用Ajax 只要模板位于同一个域上,就可以通过ajax获得它们 要求如果使用我的小部件的人没有使用AMD兼容库,我将返回以下代码:
$.ajax({
url: root.WIDGET.BaseUrl + 'templates/widget.html',
asynx: false, // synchonous call in case code tries to use template before it's loaded
success: function (response) {
widgetTemplate = response;
}
});
这假设您也在使用jQuery,但如果您在使用其他东西,原则是相同的。我个人使用RequireJS将模板加载到模块中,但如果您在寻找其他东西,则可以使用Ajax 只要模板位于同一个域上,就可以通过ajax获得它们 要求如果使用我的小部件的人没有使用AMD兼容库,我将返回以下代码:
$.ajax({
url: root.WIDGET.BaseUrl + 'templates/widget.html',
asynx: false, // synchonous call in case code tries to use template before it's loaded
success: function (response) {
widgetTemplate = response;
}
});
这假设您也在使用jQuery,但如果您在使用其他东西,原则是相同的。可能重复:可能重复: