0

これをガイドとして使用して、Backbone と RequireJS を使用してアプリを構築しています。Backbone は非 AMD であるため、上記のガイドに記載されているように、RequireJS shim を使用しています。

私のメインスクリプトは次のようになります。

require.config({
  baseUrl: "js/",
  paths: {
    jquery: 'lib/jquery.min',
    underscore: 'lib/underscore',
    backbone: 'lib/backbone',
    'backbone.localStorage': 'lib/backbone.localStorage-min'
  },
  shim: {
    underscore: {
      exports: "_"
    },
    backbone: {
      deps: ['underscore', 'jquery'],
      exports: 'Backbone'
    },
    'backbone.localStorage': {
      deps: ['backbone'],
      exports: 'Backbone'
    }
  }
});

このガイドでは、Backbone を含めずに他のモジュールに「backbone.localStorage」を含めるように示しているため、deps: ['backbone']またはexports: BackbonelocalStorage shim で Backbone が含まれていることを確認したと想定しました。

ただし、undefined method: extendJavascript コンソールでエラーが発生し続けます

次のような他のモジュールを開始しています。

define(['underscore','backbone.localStorage'], function(_, Backbone) {

Backbone と Backbone.localStorage の両方を RequireJS に含めるにはどうすればよいですか?

Backbone または RequireJS を使用するのはこれが初めてなので、問題が明らかである場合は申し訳ありません...

4

1 に答える 1

2

これが私のコーヒースクリプトバージョンです:

shim:
 underscore:
  exports: "_"
 backbone:
  deps: ["underscore", "jquery"]
  exports: "Backbone"
 localStorage:
  deps: ["backbone"]

paths:
  backbone: "lib/backbone/backbone-min"
  underscore: "lib/underscore/underscore-min"
  localStorage: "lib/backbone.localStorage/backbone.localStorage"

そしてモジュールで

define [
 "underscore"
 "backbone"
 "localStorage"
], (_, Backbone) ->

ローカル ストレージは基本的にバックボーン オブジェクトにアタッチされるため、バックボーンはその前に AMD によってロードされる必要があります。

于 2013-03-28T21:42:38.297 に答える