Ecco quello che ho fatto:
npm install grunt-browserify --save-dev
npm install coffeeify --save-dev
Aggiungi passo grugnito-browserify in Gruntfile.js
:
browserify: {
basic: {
src: ['<%= yeoman.app %>/scripts/**/*.js', '<%= yeoman.app %>/scripts/**/*.coffee'],
options: {
transform: ['coffeeify']
},
dest: '.tmp/scripts/application.js'
}
}
Aggiungi passo per concomitante/watch passi, ad esempio:
concurrent: {
server: [
'...',
'browserify'
],
dist: [
'...',
'browserify'
]
}
watch: {
coffee: {
files: ['<%= yeoman.app %>/scripts/{,*/}*.coffee'],
tasks: ['...', 'browserify']
}
}
Modifica predefinita app/index.html template, in modo usemin concatenerà e minify, da questo:
<!-- build:js scripts/main.js -->
<script src="bower_components/jquery/jquery.js"></script>
<script src="scripts/main.js"></script>
<!-- endbuild -->
<!-- build:js(.tmp) scripts/coffee.js -->
<script src="scripts/hello.js"></script>
<!-- endbuild -->
A tal:
<!-- build:js({.tmp,app}) scripts/main.js -->
<script src="bower_components/jquery/jquery.js"></script>
<script src="scripts/application.js"></script>
<!-- endbuild -->
fonte
2013-07-26 20:16:22
si può mostrare questo con il diff se qualcuno non stava usando il coffeescript? – captDaylight