2016-11-01 79 views
1

私は012vでJavascript SDKを使用して作業しようとしているLaravelにプロジェクトを持っています。私は、APIのためのCDNを使用しています:Javascript - 定義はcdnから定義されていません

<script type="text/javascript" src="http://cdn.spid.se/sdk/spid-sdk-2.1.0-amd.js"></script> 

そして、このようにそれを開始しようとしている:

$(document).ready(function(){ 

    // Add event subscribers 
    SPiD.event.subscribe('SPiD.login', function(data) { console.log(data); }); 
    SPiD.event.subscribe('SPiD.logout', function(data) { console.log(data); }); 
    SPiD.event.subscribe('SPiD.sessionChange', function(data) { console.log(data); }); 

    //Initiate SDK 
    SPiD.init({ 
    client_id: 'myClientId', 
    server: 'https://payment.schibsted.no' 
    }); 
    // Check session 
    SPiD.hasSession(); 

}); 

しかし、私は得る:

spid-sdk-2.1.0-amd.js:1 Uncaught ReferenceError: define is not defined(…)(anonymous function) @ spid-sdk-2.1.0-amd.js:1 spid.js:4 Uncaught ReferenceError: SPiD is not defined(…)

私はSOにここで読む、ということそれはrequire.jsを使用しているために発生します。両方ともエラーなしで動作させるにはどうすればよいですか?

答えて

1

documentation lists a number of hosting options

AMDオプションを選択しましたが、AMD環境でコードを実行していません。 (もしあなただったら、defineが定義されます)。

別のものを使用します(「通常のグローバル変数バージョン」が必要です)。

​​

No. Require.JSは、AMD環境を提供します。 ではないため、Require.JSを使用していません(少なくとも、AMDの依存スクリプトをロードしようとする時点ではなく、<script>要素を並べ替える必要があるかもしれません。あなたがそれをロードした後まで、defineを使用してください)。

関連する問題