2015-04-27 2 views
7

Kann die jQuery-Abhängigkeit von vendor.js in ember-cli ausgeschlossen werden, wenn nur für die Produktion gebaut wird? Ich möchte es separat in meine Website aufnehmen.jQuery von vendor.js in ember-cli ausschließen

+0

Können Sie Ihren Anwendungsfall erklären? Ich bin neugierig, warum du das machen willst. – rog

+0

Ja natürlich. Ich möchte eine Ember-App in eine bestehende Site einbetten, in der jQuery-Lib bereits enthalten ist. Also möchte ich die Dateigröße von vendor.js reduzieren und auch vor eventuellen Konflikten geschützt sein (falls es welche gibt !?). – Akis

+0

Ah ok, ich verstehe. Ich habe eine Idee, die vielleicht funktioniert. Probieren Sie es aus, wird es veröffentlichen, wenn es erfolgreich ist. – rog

Antwort

1

Am Ende läuft das einzige, was für mich gearbeitet, war dies:

var app = new EmberApp({ 
vendorFiles: { 
    production: false, 
    development: 'bower_components/jquery/dist/jquery.js' 
    } 
}); 

Die in der Produktion auszuschließen, wird aber nicht in der Entwicklung.

-1

Dies ist eine ziemlich einfache Angelegenheit, überprüfen Sie die bower.json Datei in Ihrem Verzeichnis und entfernen Sie den jquery Eintrag, oder einfach bower uninstall jquery --save im CLI ausführen.

Oups verpassten nur die in Produktion, gut Sie können es als eine Dev-Abhängigkeit speichern, auf diese Weise ist es nicht im Build enthalten. So jquery entfernen und dann bower install --save-dev jquery

+0

Es macht Sinn, aber es scheint nicht zu funktionieren. Ich habe jQuery unter devDependencies gesetzt und nachdem ich 'ember build --environment =" production "' ausgeführt habe, habe ich noch jQuery in dist/assets/vendor.js. – Akis

+0

Hmm, lass es mich mal ausprobieren, ich melde mich kurz bei dir. –

+0

Nicht im Build enthalten, [Bild als Referenz] (http://imgur.com/zH7UUxD) –

12

Sie können steuern, welche Dateien bei der Entwicklung oder Produktion mit einer Hash-ähnlichen Konfiguration verwendet werden. In Ihrem Fall sollten Sie verwenden:

var app = new EmberApp({ 
    vendorFiles: { 
    'jquery.js': { 
     development: 'bower_components/jquery/dist/jquery.js', 
     production: false 
    } 
    } 
}); 

für weitere Informationen zu Customizing a built-in asset Abschnitt.