使用Grunt connect的AngularJS html5Mode。咕unt 0.4.5
如果有人偶然發現此問題,請解決以下問題:
(添加的唯一行是modRewrite行)
livereload: { options: {open: true,middleware: function (connect) { return [modRewrite([’^[^.]*$ /index.html [L]’]),connect.static(’.tmp’),connect().use( ’/bower_components’, connect.static(’./bower_components’)),connect.static(appConfig.app) ];} }},
確保在grunt文件的頂部聲明了以下內容:
var modRewrite = require(’connect-modrewrite’);解決方法
我最近切換到grunt 0.4.5,它改變了連接的工作方式。
我以前使用過connect-modrewrite,它工作得很好(/:parameter生成的URL出現了一些問題)。
這是與生成器角度0.8.0的grunt 0.4.1一起使用的舊版本,中間件部分由我修改為使用html5mode。
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 %>’ ]} },
這是Generator-angular 0.9.0-1中的新版本
connect: { options: {port: 9000,livereload: 35729 },middleware: function (connect) {return [ connect.static(’.tmp’),connect().use(’/bower_components’,connect.static(’./bower_components’) ),connect.static(appConfig.app)]; }} },
如何更改此格式以使用mod-rewrite或任何其他方法來實現html5mode?
我嘗試使用此處提供的方法:https ://gist.github.com/nnarhinen/7719157我將其組合以創建以下內容:
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) ];}
這使我可以查看普通視圖,但是modRewrite部分似乎沒有執行所需的操作,以便通過url進入任何其他視圖。
相關文章:
1. 前端 - 應該先從angularJS , vue.js , react 這些框架中的哪個開始入手?2. javascript - 一個前端的自我修養3. css - 如何在切換IMg2 img3 img4的時候第一張圖片消失4. PHPstudy創建網站成功,用瀏覽器打開文件,瀏覽器地址顯示“loaclhost:63342/,錯5. javascript - react input file6. 微信訂閱號如何用渠道二維碼統計地推效果?7. javascript - jq 上傳圖片成功后添加一個新的上傳框時出現問題8. css3 - IE678兼容last-child的方法 請教9. html - eclipse 標簽錯誤10. javascript - vue.js 在使用期間遇到ios9.3.2不兼容問題
