Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 主干+;要求+;数据地图:“数据地图”;“未定义数据映射”;_Javascript_Backbone.js_Requirejs - Fatal编程技术网

Javascript 主干+;要求+;数据地图:“数据地图”;“未定义数据映射”;

Javascript 主干+;要求+;数据地图:“数据地图”;“未定义数据映射”;,javascript,backbone.js,requirejs,Javascript,Backbone.js,Requirejs,我是Backbone.js的新手,我正在使用它进行数据可视化,作为一个学校项目。 经过几周的工作,我已经实现了require.js,遵循本教程: 我已经重新组织了我的代码,但现在我有一个错误,我无法修复。。。我使用Datamaps()创建世界地图。我在require define()函数中传递了所需的脚本,但我可能做错了什么 以下是提供错误的代码部分: define([ 'jquery', 'underscore', 'backbone', 'd3', 'c3', 'to

我是Backbone.js的新手,我正在使用它进行数据可视化,作为一个学校项目。 经过几周的工作,我已经实现了require.js,遵循本教程:

我已经重新组织了我的代码,但现在我有一个错误,我无法修复。。。我使用Datamaps()创建世界地图。我在require define()函数中传递了所需的脚本,但我可能做错了什么

以下是提供错误的代码部分:

define([
  'jquery',
  'underscore',
  'backbone',
  'd3',
  'c3',
  'topojson',
  'datamaps',
  'jqueryui',
  'text!templates/map.html'
], function($, _, Backbone, mapTemplate){

     var MapView = Backbone.View.extend({

       el: $('.container'),

       initialize: function(){
         var _this = this;

         var map = new Datamap({ ... })
...
浏览器的响应为“未捕获引用错误:未定义数据映射”。 它以前是工作的,因为我使用require,它不再工作了,我可能错过了param或其他东西

我希望在这方面能得到一些帮助;)


提前谢谢你

使用RequireJS定义具有依赖项的模块时,依赖项将作为参数传递给模块定义函数。因此,您需要匹配它们。例如

define([
  'jquery',
  'underscore',
  'backbone',
  'd3',
  'c3',
  'topojson',
  'datamaps',
  'jqueryui',
  'text!templates/map.html'
],
function($, _, Backbone, D3, C3, Topojson, Datamaps, jQueryUI) {
   // and in here you can then use the modules ...
});

您的依赖项与您发布的代码中的函数参数不匹配(在
d3
->
mapTemplate
之后)哦,好吧,您得到了:)谢谢!我阅读了require上的define()文档,实际上我不明白我真正做的是什么,我以为这只是为了加载脚本。好的,谢谢!我认为我需要定义我需要加载的每个脚本,但是D3就是加载的,即使我没有在这里定义它。现在我更了解define()的作用;)没问题。作为将来的参考,您无需添加评论来表示感谢。只要接受答案/投票就足够了。欢迎来到SO。