2016-08-02 23 views
0

Ich möchte das sortierbare Widget von jquery-ui verwenden. Ich installierte jquery-ui mit:Verwenden eines jquery-ui-Widget

bower install jquery-ui 

Im mit require.js.

paths: { 
    ... 
    'jquery.ui/sortable': 'bower_components/jquery.ui/ui/widgets/sortable' 
    ... 

In meinem Modul I importieren mit: Ich habe einen Abschnitt von jquery-ui/sortierbar hinzugefügt

define(
[ 
    'jquery.ui/sortable', 
    ... 
], 
function(
    sortable, 
    ... 
) { 

Das gibt mir eine Menge Fehler, weil sortable.js dann versucht, seine Abhängigkeiten zu importieren . Der einzige Weg, die ich bekommen konnte es funktioniert für jede Abhängigkeit von sortable.js einen Pfad hinzuzufügen:

'jquery.ui/sortable': 'bower_components/jquery.ui/ui/widgets/sortable', 
    'jquery.ui/mouse': 'bower_components/jquery.ui/ui/widgets/mouse', 
    'jquery.ui/scroll-parent': 'bower_components/jquery.ui/ui/scroll-parent', 
    'data': 'bower_components/jquery.ui/ui/data', 
    'ie': 'bower_components/jquery.ui/ui/ie', 
    'version': 'bower_components/jquery.ui/ui/version', 
    'widget': 'bower_components/jquery.ui/ui/widget', 

Dies scheint ein furchtbar beschwerlich Weg, dies zu tun. Auch 'data', 'ie', 'version' und 'widget' funktionieren nur, wenn ich sie nicht namespace.

Ist dies der richtige Weg, ein jquery-ui-Widget zu verwenden?

+1

Übrigens, wenn Sie eine Frage neu gestalten möchten, die noch keine Antworten hatte, bearbeiten Sie sie bitte, anstatt sie zu löschen. Ich war mitten in der Beantwortung Ihrer früheren Frage, als sie unter mir verschwand. – Louis

Antwort

0

Wenn alle Module, die Sie jemals beziehen sind schließlich unter bower_components/jquery.ui/ui/widgets/, dann sind Sie ein paths eine map statt mit, dass jedes Modul Listen zu verwenden:

map: { 
    "*": { 
    "jquery.ui": "bower_components/jquery.ui/ui/widgets"  
    } 
} 

Diese jede Anfrage zu jquery.ui/x Karte sollte bower_components/jquery.ui/ui/widgets. Da eine Map einen Modulnamen in einen anderen Modulnamen umwandelt, erhält jedes Modul in bower_components/jquery.ui/ui/widgets, das von .. importiert, ein Modul von bower_components/jquery.ui/ui.

+0

Probieren Sie dies, ich bekomme den gleichen Fehler, es sieht im Basisverzeichnis für scroll-Elternteil, Daten, dh etc – Mark

+0

Eigentlich tat es nicht richtig zum ersten Mal, das hat funktioniert, danke! – Mark