Javascript Gulp、Connect、AngularUI路由器和HTML5模式的工作设置
我已经尝试并搜索了很多次,但找不到以下设置的任何有效解决方案:Javascript Gulp、Connect、AngularUI路由器和HTML5模式的工作设置,javascript,angularjs,html,angular-ui-router,gulp,Javascript,Angularjs,Html,Angular Ui Router,Gulp,我已经尝试并搜索了很多次,但找不到以下设置的任何有效解决方案: 吞咽 连接() 连接实时重新加载 安格拉斯 开启HTML5模式的angularUI路由器 我尝试的最后一个选项是使用connect modrewrite,但也不起作用。我想我已经接近使用,但尽管它说,这是支持快速服务器功能,在angularUI路由器FAQ()中描述的设置不起作用 app.all('/*', function(req, res, next) { // Just send the index.html for
- 吞咽
- 连接()
- 连接实时重新加载
- 安格拉斯
- 开启HTML5模式的angularUI路由器
app.all('/*', function(req, res, next) {
// Just send the index.html for other files to support HTML5Mode
res.sendFile('index.html', { root: __dirname });
});
我得到一个错误,那个发送文件不工作。我放弃了这种方式,因为我看到urlrouter项目将被放弃。因此,我尝试使用connect modrewrite,现在进行以下配置:
gulp.task('connect', ['sass', 'fonts'], function () {
var serveStatic = require('serve-static');
var serveIndex = require('serve-index');
var modRewrite = require('connect-modrewrite');
var app = require('connect')()
.use(require('connect-livereload')({port: 35729}))
.use(serveStatic('.tmp'))
.use(serveStatic('app'))
.use('/bower_components', serveStatic('bower_components'))
.use(serveIndex('app'))
.use(modRewrite(['^ app/index.html [L]']));
require('http').createServer(app)
.listen(9010)
.on('listening', function () {
console.log('Started connect web server on http://localhost:9010');
});
});
gulp.task('serve', ['connect', 'watch'], function () {
require('opn')('http://localhost:9010');
});
但当我试图直接从链接加载页面时,我得到的只是一个“无法获取”。那么我错过了什么?如何让HTML5模式与connect一起工作,或者我真的必须使用expressJS吗