2

require.js で packery.js をロードするのに苦労しています。スクリプトはロードされましたが、ページで packery が初期化されていなくても、コンソールに次のエラーが表示されます。

キャッチされていない TypeError: undefined のプロパティ 'prototype' を読み取れません: packery.pkgd.js:486

そして486行目はこれです:

    var EventEmitter = window.EventEmitter;
    for ( var prop in EventEmitter.prototype ) {
    Uncaught TypeError: Cannot read property 'prototype' of undefined
      docReady[ prop ] = EventEmitter.prototype[ prop ];
    }

これは、github からダウンロードした最新バージョンの packery です。同じ問題を経験している人はいますか? ありがとう...

4

1 に答える 1

1

ロードする方法は次のとおりです。

1) スクリプトへのパスを定義します。

require.config({
    paths: {
    .....
    "jquery" : "path/to/jquery.js"
    "packery" : "path/to/packery.js"
    .....
}

2) shim セクションで依存関係を定義する

shim:{
    "packery" : ["jquery"] 
}

3) モジュールの依存関係配列にライブラリを含め、コールバックで使用する

define(
    [
        "jquery",
        "packery"
    ],
    function($){
        $('.some').packery
    }
);
于 2014-01-31T07:19:05.440 に答える