2015-04-04 7 views
14

Ho costruito un'app Web in Ember e sono pronto a metterlo su un server per uso pubblico. Voglio solo creare la cartella/dist /, che poi caricherò manualmente su un server tramite FTP.Come creare una build pronta per la produzione usando la CLI di Ember?

Come si costruisce un dist per questo in Brace? Non riesco a capire come attivare il minification e rimuovere i file di test dalla build.

Immagino che abbia qualcosa a che fare con i file Brocfile.js, bower.json, package.json, environment.js o tester.json, ma non so davvero quale o quale configurazione sarebbe simile.

Bonus: mi piacerebbe sapere come disabilitare/abilitare anche il minifoto, perché voglio condividere la mia produzione con un collega per vedere.

Dovrebbe essere più che solo "produzione di energia per l'ambiente". Quali file devo modificare per abilitare/disabilitare la minifrazione, includere i test ecc.? O è questo che cosa fa "ember build --environment production"?

Grazie!

+2

'brace accumulo --environment = production' –

+0

possibile duplicato di [Costruire con CLI brace in ambiente di produzione] (http://stackoverflow.com/questions/26792071/running-ember-cli-app-in-static-environment) –

+1

Perché dovrebbe essere più di quel comando? E hai letto i [documenti] (http://www.ember-cli.com/)? [Minification] (http://www.ember-cli.com/#minifying) –

risposta

20

Tutto è necessario eseguire per creare la cartella dist è quello di eseguire:

ember build --environment=production 

o come @Simon ha detto

ember build -prod 

Ma per aggiungere un po 'di carne alle ossa:

Se è necessario modificare le impostazioni, si può fare questo, trovando il file environment.js che dovrebbe essere nella cartella config .

I documenti Brace suggeriscono di cambiare lo locationType: 'hash' per garantire che lo storico funzioni correttamente con il router.

Hai una sezione che sarà simile a questa, dove è possibile aggiungere ENV.theVariableToSet = 'myValue'; per tutto ciò che si desidera modificare

if (environment === 'production') { 
    ENV.locationType = 'hash' 
} 
+0

Vorrei che fosse 'ember build production' – sheriffderek

+1

Puoi anche usare' ember build -prod' dato che '-prod' è aliasato da ember-cli in' --environment = production'. Non proprio elegante come 'ember build production', ma un po 'più corto. – Simon

-4

Per coloro che cercano, si dovrebbe aggiungere questo ai vostri Brocfile.js (che si trova nella radice App)

// When in Production mode, minify code 
if (app.env === 'production') { 
    minifyCSS: { 
     enabled: true 
    } 
    minifyJS: { 
     enabled: true 
    } 
} 

Poi eseguire il comando in Terminale (assicurarsi che siete nella vostra directory App):

ember build --environment=production 
+6

La minificazione dovrebbe essere eseguita automaticamente da 'ember-cli' quando si costruisce con l'ambiente di produzione. –

+3

concordato. Questo codice non è necessario (ridondante). L'esecuzione del comando è tutto ciò che serve per minimizzare CSS e JS. A meno che tu non abbia apportato modifiche alla configurazione predefinita, questa è la configurazione predefinita. –

+1

Anche il primo blocco di codice non è javascript corretto sintatticamente.Stai mescolando una dichiarazione con quello che assomiglia a un oggetto letterale parziale. –