我正在使用grunt,我正在尝试让watch / livereload任务在我的本地服务器(MAMP)上运行,但没有成功。
我正在根据HTML5 Boilerplate grunt文件(https://github.com/h5bp/html5boilerplate.com/blob/master/Gruntfile.js,https://github.com/h5bp/html5boilerplate.com/blob/master/package.json)调用该任务。
我也尝试过实施Tiny-lr(https://github.com/mklabs/tiny-lr)而没有成功。
我现在的连接和观看选项是
connect: {
options: {
hostname: 'localhost',
livereload: 35729,
port: 8888
},
livereload: {
options: {
base: '../',
open: true
}
},
},
watch: {
files: '<%= settings.dir.src %>/**',
less: {
files: ['src/less/*.less'],
tasks: ['less'],
},
options: {
livereload: '<%= connect.options.livereload %>'
},
scripts: {
files: ['<%= settings.dir.src %>/js/*.js', 'css/**/*.scss' ],
tasks: 'default',
options: {
spawn: false,
}
}
}
在这里我宣布开发任务:
// development task
grunt.registerTask('dev', [
'connect:livereload',
'watch'
]);
当我运行'grunt dev'时,我的浏览器会在http://127.0.0.1:8888/
处打开并仅显示:无法获取/
我需要我的浏览器打开http://localhost:8888/ctrl/
(ctrl是MAMP上文件夹项目的名称,可能是任何东西),我认为改变“基础”选项是要走的路但不是,它是不,我也不能将“/ ctrl”添加到主机名,也不能添加到端口。
有什么想法吗? 谢谢
以下是我整个代码的链接:https://github.com/zolitariuz/ctrl
答案 0 :(得分:2)
我认为你在咕噜声中误解了2个任务,
connect任务用于创建由节点js生成的http服务器,因此没有php或mysql支持,你不想通过它运行你的WP站点。
监视任务正在查找您计算机上文件的更改,在文件更改后启动相应任务,然后触发实时重新加载。
在监视任务中复制实时重新加载对象后,应完全删除连接。
您应该运行本地灯堆以运行wp,然后启动监视任务以进行文件更改。
在wp端,您应该将实时重新加载脚本排入队列,或者使用将为您注入的浏览器扩展。