经过另一项长期研究,出来了:-)似乎问题是关于函数“getobjectByName”.它不能与requireJS(ADM)一起使用.目前,我必须设置一个globel var来解决问题.我相信必须有更好的解决方案.

这是我的临时解决方案:

(1)设置全局var并将搜索模型范围设置为全局(“APP”)

var APP = {};

define(['backbone-relational'],function(){
    Backbone.Relational.store.addModelScope(APP);
})

(2)将您的关系模型导出到全局

APP.YourRelationalModel = YourRelationModel;

它有效,虽然不好……我真的很期待一个更好的答案.谢谢.

// ————

测试版本:

1.Backbone-Relational 0.8.5 
2.Backbone 1.0.0 and Underscore 1.4.4
3.JQuery 1.8.3
4.RequireJS 2.1.5

代码很简单:(或参见https://github.com/bighammer/test_relational_amd.git)

require.config({

paths : {

    js                    : 'js',jquery                : 'js/jquery-1.8.3',underscore            : 'js/underscore',backbone              : 'js/backbone','backbone-relational' : 'js/backbone-relational'
},shim : {
    underscore : {
        exports : '_'
    },backbone   : {
        deps    : ['underscore','jquery'],exports : 'Backbone'
    },'backbone-relational' : {
        deps: ['backbone']
    }
}

});

define(['backbone','backbone-relational'],function (Backbone) {

var Child = Backbone.RelationalModel.extend();
var Parent = Backbone.RelationalModel.extend({
    relations : [
        {
            key          : 'child',type         : Backbone.HasOne,relatedModel : 'Child'
        }
    ]

});

var test = new Parent();

});

将以上代码保存在main.js中并包含在index.html中,如下所示:

它不起作用.有警告信息:

Relation=child: missing model,key or relatedModel (function (){ return parent.apply(this,arguments); },"child",undefined).

我读了骨干关系的源代码,知道命名空间有问题. Relational-Backbone无法找到在“Parent”中定义的relatedModel(即找不到releatedMode:“Child”).由于我对javascript的了解有限,我找不到解决方法来解决这个问题:-)

谁能帮我这个?

在我提出问题之前,我研究了以下解决方案:

Backbone.RelationalModel using requireJs
Can’t get Backbone-relational to work with AMD (RequireJS)
Loading Backbone.Relational using Use! plugin

在这种情况下,他们都没有工作.

解决方法

你不必按字符串引用relatedModel,你可以直接引用它,所以代替relatedModel:’Child’,只需使用:relatedModel:Child.

由于您使用的是requireJS,因此您可以轻松地从其他文件中引用模型.

define(['backbone','models/child',function (Backbone,Child) {
  var Parent = Backbone.RelationalModel.extend({
    relations : [{
        key          : 'child',relatedModel : Child
    }]
  });

  var test = new Parent();
});

如何使Backbone-Relational(0.8.5)与RequireJS一起工作?的更多相关文章

  1. JavaScript的RequireJS库入门指南

    这篇文章主要介绍了JavaScript的RequireJS库入门指南,RequireJS库的人气近来攀升很快,需要的朋友可以参考下

  2. SeaJS 与 RequireJS 的差异对比

    这篇文章主要介绍了SeaJS 与 RequireJS 的差异对比,本文主要对CMD规范和AMD规范的弊端做了对比,并做出了一个总结,需要的朋友可以参考下

  3. 在JavaScript应用中使用RequireJS来实现延迟加载

    这篇文章主要介绍了在JavaScript应用中使用RequireJS来实现延迟加载,JavaScript是一款人气JS库,需要的朋友可以参考下

  4. angularJS+requireJS实现controller及directive的按需加载示例

    本篇文章主要介绍了angularJS+requireJS实现controller及directive的按需加载示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  5. RequireJs的使用详解

    本文主要介绍了RequireJs的使用。具有很好的参考价值,下面跟着小编一起来看下吧

  6. RequireJS 依赖关系的实例(推荐)

    下面小编就为大家带来一篇RequireJS 依赖关系的实例(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  7. 探索angularjs+requirejs全面实现按需加载的套路

    这篇文章主要探索了angularjs+requirejs全面实现按需加载的套路,围绕angularjs提供的各种机制进行研究,感兴趣的小伙伴们可以参考一下

  8. 优化RequireJS项目的相关技巧总结

    这篇文章主要介绍了优化RequireJS项目的相关技巧总结,RequireJS是一个人气JavaScript库,需要的朋友可以参考下

  9. 使用RequireJS优化JavaScript引用代码的方法

    这篇文章主要介绍了使用RequireJS优化JavaScript引用代码的方法,RequireJS是一款人气JS库,需要的朋友可以参考下

  10. nodejs require js文件入口,在package.json中指定默认入口main方法

    今天小编就为大家分享一篇nodejs require js文件入口,在package.json中指定默认入口main方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部