我在开发过程中使用 grunt、connect 和 livereload 来提供一个测试页面(它是一个单一的 HTML 页面),并且我想在我的手机上测试该站点。通常,我使用网络共享来执行此操作——通过使用我的 Mac 的本地 URL ( my-imac.local
) 导航到该站点。
当我使用 Python 的 SimpleHTTPServer 为页面提供服务时,效果很好。当我使用 grunt/connect 时,它在那里无法访问(尽管它仍然可以在 localhost 访问)。如何配置连接以响应这些请求?
我的 gruntfile,供参考:
var path = require('path');
var lrSnippet = require('grunt-contrib-livereload/lib/utils').livereloadSnippet;
var folderMount = function folderMount(connect, point) {
return connect.static(path.resolve(point));
};
module.exports = function(grunt) {
function registerRobustTasks(name, tasks) {
grunt.registerTask(name, function() {
// so we don't have stupid issues with grunt crashing
// every time a test fails...
grunt.option('force', true);
grunt.task.run(tasks);
});
}
grunt.initConfig({
pkg : grunt.file.readJSON('package.json'),
livereload : {
port : 48341
},
connect : {
livereload : {
options : {
port : 48342,
middleware : function(connect, options) {
return [lrSnippet, folderMount(connect, '.')];
}
}
}
},
regarde : {
html : {
files : ['*.html'],
tasks : ['livereload']
}
}
});
grunt.loadNpmTasks('grunt-regarde');
grunt.loadNpmTasks('grunt-contrib-livereload');
grunt.loadNpmTasks('grunt-contrib-connect');
registerRobustTasks('default', ['livereload-start', 'connect', 'regarde']);
};