2011-11-18 21 views
16

Ho cercato per un po 'di tempo con poco successo di essere in grado di caricare highcharts come modulo richiesto. Mi stavo chiedendo se qualcuno fosse riuscito a farlo funzionare, o se avessero qualche indicazione per farmi sulla strada giusta?Caricamento Highcharts con require.js

Grazie

risposta

40

Con require.js 2.1.0+ non è necessario un plug-in. È possibile includere Highcharts con un shim:

require.config({ 
    paths: { 
    require: "libs/require", 
    jquery: "libs/jquery", 
    highcharts: "libs/highcharts" 
    }, 
    shim: { 
    highcharts: { 
     exports: "Highcharts", 
     deps: ["jquery"] 
    } 
    } // end Shim Configuration 
}); 
1

ho appena preso a lavorare come segue:

  1. Aggiungere questo al vertice:

    define(['jquery'], function (jQuery) { 
    
  2. Aggiungere questo proprio alla fine:

    return window.Highcharts; });

Questo presuppone che jquery già definita, ad esempio

require.config({ 
    paths: { 
     'jquery': 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min' 
    } 
}); 

Puoi seguire questo approccio generale per la maggior parte delle librerie di terze parti. Ad esempio, l'ho fatto per jquery.tmpl.js e knockout.js.

1

L'utilizzo del recente use.js plugin è sicuramente la scelta giusta. Modificare le librerie di terze parti come suggerito nella mia precedente risposta è un problema di manutenibilità.