Backbone.js の問題に取り組んでいます。完全な免責事項 - 私は JavaScript とバックボーンの両方に慣れていないので、用語が不十分であることをご容赦ください。私のファイルcity_search.js
は、モーダルのバックボーン ビューです。最近、ホームページが読み込まれる場所にいくつかの変更を加えましたが、city_search.js
ページの読み込み時に次のエラーが発生し続けます。
TypeError: search is undefined
行を指していますreturn search.extend
。
検索が定義されていないのはなぜですか? common/views/search
私のファイルを参照していませんか?
define([
"jquery",
"require",
"common/views/search",
"common/views/view"], function ($, require, search, view) {
return search.extend({
placeHolder: "Find city",
render: function () {
search.prototype.render.call(this);
this.$el.find("input").attr('name', 'city');
},
selectItem: function (item) {
this.$el.find("input").val(item.get("name"));
$("input[name='city_id']").val(item.get("id"));
this.closeList();
}
});
});
search.js
/**
* Definition of a search module
**/
define([
"jquery",
"underscore",
"common/views/view",
"text!common/views/search.jst",
"text!common/views/search_list.jst",
"haway/views/add_place",
"haway/views/window_matcher", //this was recently added
], function($, _, view, template, listTemplate, add, win) {
return view.extend({
//A lot of irrelevant code removed
/**
* Selects add new place
**/
addNewPlace: function(e) {
console.log("addNewPlace triggered");
this.closeList();
this.win = new win();
this.win.render();
}
});
});