Backbone view undefined 不是函数冲突
Backbone view undefined is not a function conflict
我有这两个观点:
显示视图
define(['backbone', 'hbs!tmpl/show_tmpl', 'item/hide'],
function (Backbone, Hide) {
return Backbone.Marionette.ItemView.extend({
initialize: function () {
console.log('initialize a UserLogin ItemView');
console.log(Hide); // this comes in as undefined
}, ...
隐藏视图
define(['backbone', 'hbs!tmpl/hide_tmpl', 'item/hide', 'item/show'],
function (Backbone, Hide, Show) {
return Backbone.Marionette.ItemView.extend({
initialize: function () {
console.log('initialize a UserLogin ItemView');
console.log(Hide);
console.log(Show);
}, ...
问题是 Show View
中的 console.log(Hide);
作为 undefined
出现
如果我从 Hide View
中删除 'item/hide'
,那么它工作正常。
这个想法是我需要能够做到:
var hide = new Hide();
hide.methodOnShow();
在Show View
和
var show = new Show();
show.methodOnHide();
在Hide View
插件:如果这有帮助,这 2 个视图都会打开一个模态,所以我从显示模态中单击并打开隐藏模态,反之亦然。
如果我在打开每个模式之前刷新页面,它们可以正常工作,但不能从打开的模式内部打开它们。
关于如何解决这个问题有什么想法吗?
没有return的依赖应该在末尾添加(在其他参数之后)
define(['backbone', 'item/hide','hbs!tmpl/show_tmpl'],
function (Backbone, Hide) {
return Backbone.Marionette.ItemView.extend({
initialize: function () {
console.log('initialize a UserLogin ItemView');
console.log(Hide); // this comes in as undefined
}, ...
initialize: function () {
require(['application', 'item/hide'], function (App, Hide) {
...
});
}, ...
我有这两个观点:
显示视图
define(['backbone', 'hbs!tmpl/show_tmpl', 'item/hide'],
function (Backbone, Hide) {
return Backbone.Marionette.ItemView.extend({
initialize: function () {
console.log('initialize a UserLogin ItemView');
console.log(Hide); // this comes in as undefined
}, ...
隐藏视图
define(['backbone', 'hbs!tmpl/hide_tmpl', 'item/hide', 'item/show'],
function (Backbone, Hide, Show) {
return Backbone.Marionette.ItemView.extend({
initialize: function () {
console.log('initialize a UserLogin ItemView');
console.log(Hide);
console.log(Show);
}, ...
问题是 Show View
中的 console.log(Hide);
作为 undefined
如果我从 Hide View
中删除 'item/hide'
,那么它工作正常。
这个想法是我需要能够做到:
var hide = new Hide();
hide.methodOnShow();
在Show View
和
var show = new Show();
show.methodOnHide();
在Hide View
插件:如果这有帮助,这 2 个视图都会打开一个模态,所以我从显示模态中单击并打开隐藏模态,反之亦然。
如果我在打开每个模式之前刷新页面,它们可以正常工作,但不能从打开的模式内部打开它们。
关于如何解决这个问题有什么想法吗?
没有return的依赖应该在末尾添加(在其他参数之后)
define(['backbone', 'item/hide','hbs!tmpl/show_tmpl'],
function (Backbone, Hide) {
return Backbone.Marionette.ItemView.extend({
initialize: function () {
console.log('initialize a UserLogin ItemView');
console.log(Hide); // this comes in as undefined
}, ...
initialize: function () {
require(['application', 'item/hide'], function (App, Hide) {
...
});
}, ...