gpt4 book ai didi

javascript - 以可优化的方式使用 requirejs 加载模板

转载 作者:行者123 更新时间:2023-12-02 19:22:15 25 4
gpt4 key购买 nike

我想使用模块加载项目的所有模板,但我不确定我这样做的方式 (a) 是否能让代码使用 r.js 进行优化,并且 (b )是有道理的 - 基本上,我担心 Define() block 内的嵌套 require 不会被优化器拾取。理想情况下,我希望在运行 r.js 后有一个缩小的单个文件,其中包含所有依赖项,如果可能的话包括文本文件。

template_loader.js

define(["jquery","underscore","icanhaz"],function($,_,ich){


var template_names = [
'test'
];

require([
'text!templates/test.tpl',
],function (){
for (var i = arguments.length - 1; i >= 0; i--) {
ich.addTemplate(template_names[i],arguments[i]);
};
});


});

然后在我的主 app.js 中:

require(['jquery','underscore','backbone','icanhaz','template_loader'],function($,_,Backbone,ich,loader){

// templates should be available here as ich.template_name()

});

目标是有一个地方可以处理模板资源加载,然后可供其他模块使用。

这看起来是一个好方法吗?如果不是,更好的策略是什么?

最佳答案

如果您想一次性加载所有模块,您可以尝试以下操作:

generic_templates.js

define(function(require){
var tpl1 = require('text!generic_tpl1');
var tpl2 = require('text!generic_tpl2');
// etc

return {
tpl1: tpl1,
tpl2: tpl2
}
});

app.js

require(['generic_templates'], function(genericTemplates) {

console.log(genericTemplates.tpl1) // some html

});

关于javascript - 以可优化的方式使用 requirejs 加载模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12405965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com