我正在使用骨架#2,HTML5BP + Grunt。我docpad run
第一次发生以下情况:
info: LiveReload listening to new socket on channel /docpad-livereload
Performing writeFiles (postparing) at 0/1 0% [...] Running "min:js" (min) task
File "../out/scripts/all.min.js" created.
Uncompressed size: 298495 bytes.
Compressed size: 38257 bytes gzipped (106756 bytes minified).
这是应该的。但是,如果我更改模板或文档文件,则使用livereload插件,我得到:
--Running "min:js" (min) task
File "../out/scripts/all.min.js" created.
Uncompressed size: 0 bytes.
编辑我的script.js会把它抛到混合中,但我的供应商js文件都没有用它渲染,这也没用。 grunt-cssmin无论如何都会呈现所有scss / css文件grunt-config.json
,这样可以正常工作。将我的js从/files/vendor
移动到/documents/scripts
并未改变此行为。
我做了一点点蠢事,但我是新来的咕噜咕噜,没有任何东西跳出来。
如果我可以,那就太好了:
a)每次grunt-config.json
缩进并压缩所有JS文件
b)在开发环境中没有grunt min js文件
如果我想对javascript的某些内容进行任何更改,我需要ctrl-c docpad然后再次运行它,这就是meh。
答案 0 :(得分:0)
不理想,但足够有效:
events:
# Write After
# Used to minify our assets with grunt
writeAfter: (opts,next) ->
# Prepare
docpad = @docpad
rootPath = docpad.config.rootPath
balUtil = require 'bal-util'
_ = require 'underscore'
# Make sure to register a grunt `default` task
command = ["#{rootPath}/node_modules/.bin/grunt", 'default']
# Execute
balUtil.spawn command, {cwd:rootPath,output:true}, ->
src = []
gruntConfig = require './grunt-config.json'
_.each gruntConfig, (value, key) ->
src = src.concat _.flatten _.pluck value, 'src'
#_.each src, (value) ->
# balUtil.spawn ['rm', value], {cwd:rootPath, output:false}, ->
#balUtil.spawn ['find', '.', '-type', 'd', '-empty', '-exec', 'rmdir', '{}', '\;'], {cwd:rootPath+'/out', output:false}, ->
next()
# Chain
@
围绕" balUtil"其中执行find / rm命令已被注释掉。
由于"未压缩"文件遗留下来 - 但这并不是真正的世界末日。最终,实时重新加载到空白页面更令人沮丧。
可能有一种方法可以进一步增强这一点,以检测实时重新加载(开发)与生成生产版本,但我还没有意识到这一点。