laravel gulp watch 不更新 sass css 文件

Posted

技术标签:

【中文标题】laravel gulp watch 不更新 sass css 文件【英文标题】:laravel gulp watch not updating sass css files 【发布时间】:2015-11-02 16:38:56 【问题描述】:

在我们的 Laravel 5.1 应用程序中,我们使用 elixir 和 gulp 从 sass 编译 css。当我们只运行gulp 时,一切都正确编译并且css 文件是最新的。然而,当我们运行 gulp watch 并更新 .scss 文件时,Gulp 说 Sass 编译成功,但 css 文件没有最新的更改。我们做错了什么?

添加 gulpfile.js 内容:

var gulp = require('gulp'); var elixir = require('laravel-elixir'); 长生不老药(功能(混合)
mix.copy("vendor/kwizer15/jquery/jquery.js",     "resources/assets/js/jquery.js")
    .copy("vendor/kwizer15/jquery-ui/dist/jquery-ui.js",     "resources/assets/js/jquery-ui.js")
    .copy("vendor/kwizer15/jquery-ui/dist/jquery-ui.css",     "resources/assets/css/jquery-ui.css")
    .copy("vendor/kwizer15/jquery-ui/dist/images/**", "public/images/")
    .copy("vendor/kwizer15/highcharts/highcharts.js",     "resources/assets/js/highcharts.js")
    .copy("vendor/fortawesome/font-awesome/css/font-awesome.css",     "resources/assets/css/font-awesome.css")
    .copy("vendor/fortawesome/font-awesome/fonts/**",     "public/build/fonts/")
    .copy("vendor/twbs/bootstrap/dist/css/bootstrap.css",     "resources/assets/css/bootstrap.css")
    .copy("vendor/twbs/bootstrap/dist/js/bootstrap.js", "resources/assets/js/bootstrap.js")
    .copy("vendor/twbs/bootstrap/dist/fonts/**", "public/assets/fonts/")
    .copy("vendor/rjacobsen/jquery-nestable/src/jquery.nestable.css",     "public/css/jquery.nestable.css")
    .copy("vendor/rjacobsen/jquery-nestable/src/jquery.nestable.js",     "public/js/jquery.nestable.js")
    .copy("bower_components/mjolnic-bootstrap-colorpicker/dist/css/**",     "public/css/")
    .copy("bower_components/mjolnic-bootstrap-colorpicker/dist/img/**",     "public/images/")
    .copy("bower_components/mjolnic-bootstrap-colorpicker/dist/js/**",     "public/js/")
    .scripts(
        [
            'jquery.js',
            'jquery-ui.js',
            'bootstrap.js',
            'highcharts.js'
        ]
    )
    .styles(
        [
            'font-awesome.css',
            'bootstrap.css',
            'jquery-ui.css',
            'custom/nav_styles.css'
        ]
    )
    .phpUnit()
    .version(["css/all.css", "js/all.js"]);

mix.sass(['reseller_settings.scss'],     'public/css/reseller_settings.css');
mix.sass(['menu_builder.scss'], 'public/css/menu_builder.css');
mix.sass(['nav_menu.scss'], 'public/css/nav_menu.css');
);

【问题讨论】:

您需要发布 grunt 文件的内容。我怀疑您为 watch 任务配置了错误的 css 输出。 【参考方案1】:

我遇到了同样的问题。但是我将文件移动到与主文件相同的目录中

之前: 资源/资产/自定义

之后: 资源/资产/sass/自定义

【讨论】:

以上是关于laravel gulp watch 不更新 sass css 文件的主要内容,如果未能解决你的问题,请参考以下文章

gulp gulp-watch不起作用

Gulps gulp.watch 不会为新文件或已删除文件触发?

防止错误破坏/崩溃 gulp watch

Gulp Watch 只运行一次

gulp 3.0 & 4.0 | watch task has to be a function问题

Gulp Watch 和 Nodemon 冲突