Ich bin kürzlich zu grunt 0.4.5 gewechselt und es hat sich geändert wie connect funktioniert.AngularJS html5Mode mit Grunt verbinden. grunt 0.4.5
Ich verwendete zuvor connect-modrewrite und es funktionierte ziemlich gut (hatte einige Probleme mit URLs generiert von /: Parameter).
Hier ist die alte Version, die mit Grunt 0.4.1 von generator-eckigen 0.8.0 mit der Middleware Teil von mir modded, um html5mode zu verwenden.
connect: {
options: {
port: 9000,
hostname: '*IP HERE*',
livereload: 35729,
middleware: function (connect, options) {
var optBase = (typeof options.base === 'string') ? [options.base] : options.base;
return [require('connect-modrewrite')(['!(\\..+)$/[L]'])].concat(
optBase.map(function(path){ return connect.static(path); })
);
}
},
livereload: {
options: {
open: true,
base: [
'.tmp',
'<%= yeoman.app %>'
]
}
},
Hier ist die neue Version von Generator-Winkel 0.9.0-1
connect: {
options: {
port: 9000,
hostname: '*IP HERE*',
livereload: 35729
},
livereload: {
options: {
open: true,
middleware: function (connect) {
return [
connect.static('.tmp'),
connect().use(
'/bower_components',
connect.static('./bower_components')
),
connect.static(appConfig.app)
];
}
}
},
Wie kann ich ändern, diese Mod-Rewrite oder jede andere Methode zu verwenden html5mode zu erreichen?
Ich habe versucht, das Verfahren hier zur Verfügung gestellt mit: https://gist.github.com/nnarhinen/7719157 ich es kombiniert folgendes zu schaffen: me
middleware: function (connect) {
return [
connect.static(modRewrite(['^[^\\.]*$ /index.html [L]'])),
connect.static('.tmp'),
connect().use(
'/bower_components',
connect.static('./bower_components')
),
connect.static(appConfig.app)
];
}
Dies ermöglicht die normale Ansicht zu sehen, aber der modrewrite Teil scheint nicht zu tun, was er braucht um über die URL zu einer anderen Ansicht zu gelangen.
Seltsam, ich bin derzeit verwendet Grunt 0.4.5 und die Middleware hat gut funktioniert. Ich habe eine Reihe verschiedener Implementierungen ausprobiert und dies war die einzige, die mit einer "Basis" -Option arbeitete. –