我想從使用AngularJS ngRoute模塊切換到ui-router模塊框架。我的應用程序是使用$locationProvider.html5Mode
並防止深層鏈接從給予404我已經安裝了connect-modrewrite
節點模塊(來自https://www.npmjs.org/package/connect-modrewrite),並將其添加到由AngularJS約曼發生器提供的咕嚕文件,像這樣:
// Yeoman's Gruntfile.js
// placed outside the module.exports function.
var modRewrite = require('connect-modrewrite');
...
// modify the server config and add our modRewrite middleware.
livereload: {
options: {
middleware: function (connect) {
return [
modRewrite([
'!\\.html|\\.js|\\.css|\\.png$ /index.html [L]'
]),
lrSnippet,
mountFolder(connect, '.tmp'),
mountFolder(connect, yeomanConfig.app)
];
}
}
}
這是偉大的,但我現在已經切換到使用UI路由器模塊框架應我深層鏈接(例如)http://myapp.com:9000/products我得到的迴應:
Cannot GET /products
顯然,當我去到家庭/默認頁面,點擊一個鏈接到http://myapp.com:9000/products一切都很好,花花公子。有沒有人修改過他們的grunt文件,以便他們可以在AngularJS Yeoman生成器中使用html5mode和ui-router?提前致謝。