Przy użyciu SystemJS, w jaki sposób określić, że jedna biblioteka zależy od innej? Na przykład biblioteka JavaScript Bootstrap zależy od wersji jQuery. W oparciu o SytemJS docs, Przypuszczałem byłoby określić tę zależność za pomocą System.config.meta
właściwość:Jak mogę określić zależności bibliotek przy użyciu SystemJS?
System.config({
baseUrl: './scripts',
defaultJSExtensions: true,
map: {
jquery: './lib/jquery-2.2.0.min.js',
bootstrap: './lib/bootstrap.min.js'
},
meta: {
bootstrap: {
deps: ['jquery']
}
}
});
System.import('./scripts/app.js');
Ale to wydaje się nie mieć wpływu. Kiedy uruchamiam moją aplikację, biblioteka Bootstrap zgłasza błąd Bootstrap's JavaScript requires jQuery
- co oznacza, że Bootstrap jest ładowany przed jQuery.
Jak mogę zapewnić, że jQuery jest zawsze ładowana przed uruchomieniem Bootstrap?
jQuery musi być jawnie dodany do 'okna'. –
@StephanBijzitter - czy możesz podać przykład? Nie jestem pewien, co to oznacza w kontekście SystemJS. –
'window. $ = Window.jQuery = require ('jQuery')', umieść ten kod w dowolnym miejscu przed dołączeniem plików bootstrap. To brzydkie, ale w ten sposób Twitter to lubi. –