Ich bin neu zu browserifizieren und ich versuche, ein einfaches Beispiel mit zwei Dateien einzurichten. ich jquery mit NPM installiert haben:Durchsuchen Sie jQuery Plugin auf eine andere Datei, die jquery
npm install --save jquery
und auch habe ich installiert ein Karussell Plugin Bower:
bower install slick-carousel
Ich habe im Grunde eine allgemeine app.js, wo ich alle allgemeinen js haben wie Bootstrap + jquery + meine globale Logik ... Dann habe ich eine andere Datei spezifisch für eine Seite (zB .: homepage.js)
Was ich brauche ist jquery auf app.js und meine jQuery-Plugin zu haben ("Slick Karussell ") in einer anderen Datei.
Wenn ich erfordern Slick-Karussell auf der gleichen Datei funktioniert alles einwandfrei und ich bin in der Lage so etwas wie $ zu nennen ("# my-Selektor") Slick():.
global.$ = global.jQuery = require("jquery");
require('slick-carousel');
Aber als ich sie haben in verschiedenen Dateien wie folgen aus:
app.js:
global.$ = global.jQuery = require("jquery");
homepage.js
require('slick-carousel');
... Ich bekomme eine Fehlermeldung, dass Slick nicht definiert ist.
Ich habe versucht, browserify-shim ohne Erfolg zu verwenden. Außerdem habe ich einen einfachen Test gemacht, indem ich eine console.log (window. $ === $) in den Plugin-Code eingefügt habe und festgestellt habe, dass das $ -Objekt, das im Plugin verwendet wird, anders als window. $ Ist Grund, warum es scheitert, aber ich weiß nicht, wie ich es beheben kann.
Jede Hilfe wäre willkommen.