Rails,build:css 脚本中的多个 css 输出阻止 --watch 工作
Rails, multiple css outputs in build:css script prevents --watch from working
使用 Rails 7,如果我的 build:css
脚本在 package.json
中有多个输出,--watch` 不再有效,我如何输出多个文件并仍然启用文件更改后重建 css 的脚本?
例如,这不有效:
"build:css": "sass ./app/assets/stylesheets/application.sass.scss ./app/assets/builds/application.css --no-source-map --load-path=node_modules && sass ./app/assets/stylesheets/active_admin.sass.scss ./app/assets/builds/active_admin.css --no-source-map --load-path=node_modules"
而如果我删除 &&
以及后面的所有内容,如下所示:
"build:css": "sass ./app/assets/stylesheets/application.sass.scss ./app/assets/builds/application.css --no-source-map --load-path=node_modules"
工作,并且观察文件的变化和重建,我做错了什么?
因为 --watch
标志只是附加到 build:css
命令,它最终会执行这个
sass ... && sass ... --watch
它编译 application.scss
然后监视 admin.scss
。
这是正确的语法:
https://sass-lang.com/documentation/cli/dart-sass#many-to-many-mode
sass [<input.css>:<output.css>] [<input/>:<output/>]...
"build:css": "sass ./app/assets/stylesheets/application.sass.scss:./app/assets/builds/application.css ./app/assets/stylesheets/active_admin.sass.scss:./app/assets/builds/active_admin.css --no-source-map --load-path=node_modules"
使用 Rails 7,如果我的 build:css
脚本在 package.json
中有多个输出,--watch` 不再有效,我如何输出多个文件并仍然启用文件更改后重建 css 的脚本?
例如,这不有效:
"build:css": "sass ./app/assets/stylesheets/application.sass.scss ./app/assets/builds/application.css --no-source-map --load-path=node_modules && sass ./app/assets/stylesheets/active_admin.sass.scss ./app/assets/builds/active_admin.css --no-source-map --load-path=node_modules"
而如果我删除 &&
以及后面的所有内容,如下所示:
"build:css": "sass ./app/assets/stylesheets/application.sass.scss ./app/assets/builds/application.css --no-source-map --load-path=node_modules"
工作,并且观察文件的变化和重建,我做错了什么?
因为 --watch
标志只是附加到 build:css
命令,它最终会执行这个
sass ... && sass ... --watch
它编译 application.scss
然后监视 admin.scss
。
这是正确的语法:
https://sass-lang.com/documentation/cli/dart-sass#many-to-many-mode
sass [<input.css>:<output.css>] [<input/>:<output/>]...
"build:css": "sass ./app/assets/stylesheets/application.sass.scss:./app/assets/builds/application.css ./app/assets/stylesheets/active_admin.sass.scss:./app/assets/builds/active_admin.css --no-source-map --load-path=node_modules"