在backbone.js项目中导入并使用javascript库

Import and using javascript library in backbone.js project

本文关键字:javascript 导入 backbone js 项目      更新时间:2023-09-26

我是backbone.jsrequire.js的新手。目前我创建了一个骨干项目。这里是app.js代码:

 define([
  'jquery',
  'underscore',
  'backbone',
  'script',
  'router'
 ], function($, _, Backbone, Script, Router){
 var initialize = function(){
    Router.initialize();
 };
 return {
    initialize: initialize
 };
});

这是main.js:

require.config({
path: {
    jquery: 'libs/jquery/jquery-min',
    underscore: 'libs/underscore/underscore-min',
    backbone: 'libs/backbone/backbone-min',
    script: 'libs/scripts/index'
},
shim:{
    backbone: ['jquery', 'underscore'],
    script: ['jquery'],
    enforceDefine: true
}
});
require([
'app',
], function(App){
App.initialize();
});

最后一个是router.js:

define([
  'jquery',
  'underscore',
  'backbone',
  'script'
], function($, _, Backbone){
var AppRouter = Backbone.Router.extend({
    routes:{
      
        '*actions': 'defaultAction'
    }
});
var initialize = function(){
    var app_router = new AppRouter;
    app_router('route:defultAction', function(actions){
    });
    Backbone.history.start();
};
 return {
    initialize: initialize
 };
});

我想将jqueryjson库添加到我的项目中。如果在html project中,这是我的代码:

<script type="text/javascript" src="jquery-min.js"></script>
<script type="text/javascript" src="jquery.json-2.4.min.js">
</script>
<script>
     function serializeObjToJSON(_obj) {
         var _json = $.toJSON(_obj);
         return _json;
     }
     function deserializeJSONToObj(_json) {
         var _obj = $.evalJSON(_json);
         return _obj;
     }
        
</script>

我想导入上面的库,并在我的主干项目中使用它。但我不知道该怎么做。

任何帮助都将不胜感激,谢谢。

在您的主JS中,您应该添加JSON引用。(将jquery.json-2.4.min.js放入lib/文件夹)

require.config({
path: {
    jquery: 'libs/jquery/jquery-min',
    underscore: 'libs/underscore/underscore-min',
    backbone: 'libs/backbone/backbone-min',
    script: 'libs/scripts/index',
    json: 'libs/jquery.json-2.4.min'
}

然后,您可以将它作为定义添加到app.js或任何其他引用它的module.js文件中。

define([
  'jquery',
  'underscore',
  'backbone',
  'script',
  'router',
  'json'

 ], function($, _, Backbone, Script, Router, Json){
 //Code
 }

然后在您的js文件中,您有对json的引用。您可以使用进行调用

 Json.method()

例如。。一旦您编写json,它就会查找您的定义,然后为您调用的函数引用该lib。

因此,你的index.js或你想调用它的任何一端都需要这样的东西:

define([
      'jquery',
      'underscore',
      'backbone',
      'script',
      'router',
      'json'

     ], function($, _, Backbone, Script, Router, Json){
serializeObjToJSON: function(_obj) {
         var _json = Json.toJSON(_obj);
         return _json;
     }
     deserializeJSONToObj: function(_jsonObject) {
         var _returnObj = Json.evalJSON(_jsonObject);
         return _returnObj;
     }