我正在创建一个RPG。我想根据当前级别动态加载NPC对话框js文件。使用requireJS动态加载js文件
最初,我在做我的game.js文件顶部的<script type="text/javascript" src="js/npc_dialog_level_1.js"></script>
......但不想继续为每个npc_dialog.js文件做这件事。
我宁愿做这样的事情:
if (map == 1) {
require(js/npc_dialog_level_1.js);
if (map == 2) {
require(js/npc_dialog_level_2.js);
我下面requireJS的教程,但我不清楚在:
一)下载requireJS不包括在该示例中指定的辅助/ utils.js文件夹和文件:
project-directory/
project.html
scripts/
main.js
require.js
helper/
util.js
b)如何使用require函数:require(["helper/util"], function(util) {
在更改地图时,我只想将路径放到关联的npc_dialog_level.js
文件中。我在哪里放置需求代码,以及如何传递它以加载正确的js文件?
每个npc_dialog_level文件都包含js对象。我使用的是在我的比赛阅读对话框
var dialog = {
quests : {
Lee : {
"1 - Introductions" :
更新:
我想:
//load NPC dialog given the map
loadNpcDialog : function (dialogNumber) {
require("npc_dialog_level_" + dialogNumber + ".js", function(dialog) {
// log(dialog);
});
},
给出:
Uncaught Error: Invalid require call
http://requirejs.org/docs/errors.html#requireargs require.js:166
您能否再详述一下? npc_dialog_level_X文件包含什么内容?这听起来不像requirejs是这里的正确工具。你有没有考虑过使用普通的AJAX呢? – sahbeewah
@sahbeewah我已更新 – Growler