2013-02-25 13 views
7

C'è qualche file di configurazione o qualcosa che possiamo cambiare in yeoman che impostare la directory "app" su qualcos'altro? Lavoro con Zend Framework 2 e usa la directory "pubblica" come root yeoman usa "app".Cambia il nome della cartella dell'applicazione yeoman

Vedo che posso inserire il nome della directory nel file Grunt.js ma sarebbe bello reimpostare i valori predefiniti in yeoman.

+4

prega di non includere "Qualsiasi input è molto apprezzato." nella tua domanda È un rumore inutile. – Doorknob

+0

Quale versione di Yeoman stai usando? –

+0

Versione Yeoman 0.9.6 –

risposta

4

Con la versione 1.4.7:

1) Per cartella app:

Gruntfile.js:

var appConfig = { 
    app: require('./bower.json').appPath || 'app', 
    dist: 'www' 
}; 

index.html:

<!-- build:js({.tmp,app}) scripts/scripts.js --> 

Bower.JSON:

"appPath": "app" 

test/karma.conf.js

'app/scripts/**/*.js' 

2) per la directory dist:

Solo in Gruntfile.js

var appConfig = { 
    app: require('./bower.json').appPath || 'app', 
    dist: 'www' 
}; 
7

Si desidera modificare le impostazioni Gruntfile.js, a partire dalla versione 1.0, tutto è elencato qui e la compilazione viene eseguita solo da Grunt.

come scrivono sul website:

Yo ponteggi fuori una nuova applicazione, scrivendo la configurazione Grunt e tirando in compiti rilevanti Grunt che potrebbe essere necessario per la vostra build.

Bower viene utilizzato per la gestione delle dipendenze, in modo che non sia più necessario scaricare e gestire manualmente gli script .

Grunt è utilizzato per creare, visualizzare in anteprima e testare il progetto, grazie all'aiuto delle attività a cura del team Yeoman e grunt-contrib.

non riesco a ricordare dove le vecchie impostazioni sia nel gruntfile, ma nella versione 1.0 è in linea 11 e si presenta così:

// configurable paths 
var yeomanConfig = { 
    app: 'app', 
    dist: 'dist' 
}; 
+0

Guardando 'Gruntfile.js', vedo' app' apparire in poche altre posizioni. Che cosa era la linea 11 ora è ** 18 **. Ci sono anche 61 e 142. Anche queste linee devono essere aggiornate? – curtisblackwell

1

Update per 1.0 e modificare il Gruntfile.js

// configurable paths 
var yeomanConfig = { 
    **app: 'app',** 
    dist: 'dist' 
}; 
+0

Sono su Windows e non c'è ancora nessuna versione per Windows della beta 1.0 :( –

+0

Sei interessato alla build "server" o "dist"? Se sei interessato alla dist build puoi usare il grunt- pacchetto di contibr-copy per spostare "app" su "public" –

+0

"dev" quindi suppongo "server" –

0

Ci scusiamo per resuscitare questo, però ho trovato un paio di luoghi che questo deve cambiare e sentire che posso aggiungere qualche valore:

Uso Laravel, che usa un'app e una cartella pubblica, e non ho mai usato Zend, ma presumo che si debba applicare qualcosa di simile.

installazione è Yeoman generato applicazione in yeoman:

/[zendapproot]/

mkdir yeoman && cd yeoman 
yo angular [appName] 

/[zendapproot]/Yeoman/

append contents of `/[zendapproot]/yeoman/.gitignore` into `/[zendapproot]/.gitignore` 
move everything except the app directory into /[zendapproot]/ 

modificare .bowerrc

{ 
"directory": "yeoman/app/bower_components" 
} 

modifica Gruntfile.js cambiare app e cartelle dist

yeoman: { 
    // configurable paths 
    app: require('./bower.json').appPath || 'yeoman', 
    dist: 'public/assets' 
}, 

modificare karma.conf.js

files: [ 
    'yeoman/app/bower_components/angular/angular.js', 
    'yeoman/app/bower_components/angular-mocks/angular-mocks.js', 
    'yeoman/app/bower_components/angular-resource/angular-resource.js', 
    'yeoman/app/bower_components/angular-cookies/angular-cookies.js', 
    'yeoman/app/bower_components/angular-sanitize/angular-sanitize.js', 
    'yeoman/app/bower_components/angular-route/angular-route.js', 
    'yeoman/app/scripts/*.js', 
    'yeoman/app/scripts/**/*.js', 
    'yeoman/app/test/mock/**/*.js', 
    'yeoman/app/test/spec/**/*.js' 
], 

corsa grunt test per garantire che il test sta funzionando.

corsa grunt serve per servire la webapp in un env test

corsa grunt di costruire che dovrebbe archiviare l'applicazione in public/assets

Ora questa è la parte non sono sicuro su ...

Allo stato attuale, rimuovo htmlmin e rev da grunt.registerTask('build'... in Gruntfile.js per interrompere la minifrazione html e per bloccare le risorse rinominate.

Poi ho aperto il mio vista padrone modello da laravel (Zend nel tuo caso) e modificare gli script e gli stili a quello previsto nel grugnito costruito index.html /public/assets/index.html

Se qualcuno ha un modo migliore di affrontare quanto sopra, si prega di condividere. per esempio. in relazione al passaggio dei nomi dei file delle risorse rinominati ai modelli di visualizzazione delle applicazioni zend/laravel.

2

per angolari versione 0.9.5 generatore funziona per me:

  • cambiamento nome della cartella da per app a tutto il necessario, per esempio 'ClientApp'
  • modificare gruntfile.js, cambiamento AppConfig app: 'ClientApp'
  • modificare cambiare linea bower.json "AppPath": "ClientApp"
  • nella cartella rinominata trovare index.html, quindi trovare e modificare parte a commento

    costruire: js ({. TMP, ClientApp}) scripts/scripts.js

  • in prova Trova cartella karma.conf.js e cambiare app per 'ClientApp' nella sezione File

0

Durante la creazione di un nuovo progetto (per angolare almeno), v'è una linea di arg cmd per questo: --appPath = [newpath]:

yo angular --appPath=public 

Come cambiare il nome della cartella dist:

Inoltre, per tutti coloro che finiscono qui cercando come cambiare il nome della cartella dist (come ho fatto io): Non c'è alcun arg di riga cmd che potrei trovare, quindi è necessario modificare manualmente Gruntfile.js alla riga 21 dopo aver creato il progetto, ma prima di eseguire grugnito:

// Configurable paths for the application 
var appConfig = { 
    app: require('./bower.json').appPath || 'app', 
    //dist: 'dist' 
    dist: 'public' 
}; 
Problemi correlati