玩Rails 7,我不明白为什么我的定制CSS不能工作。
我建立了新的rails应用程序,标志为Bootstrap,运行良好(CSS和JS,用引导模式测试)。这些是我的默认配置文件:
application.js
// Entry point for the build script in your package.json
import "@hotwired/turbo-rails"
import "./controllers"
import * as bootstrap from "bootstrap"application.bootstrap.scss
@import 'bootstrap/scss/bootstrap';package.json
{
"name": "app",
"private": "true",
"dependencies": {
"@hotwired/stimulus": "^3.0.1",
"@hotwired/turbo-rails": "^7.1.0",
"@popperjs/core": "^2.11.2",
"bootstrap": "^5.1.3",
"esbuild": "^0.14.23",
"jquery": "^3.6.0",
"popper.js": "^1.16.1",
"sass": "^1.49.9",
"stimulus": "^3.0.1"
},
"scripts": {
"build": "esbuild app/javascript/*.* --bundle --sourcemap --outdir=app/assets/builds",
"build:css": "sass ./app/assets/stylesheets/application.bootstrap.scss ./app/assets/builds/application.css --no-source-map --load-path=node_modules"
}
}我可以在/builds/application.css中建立CSS。
现在我想添加自定义CSS。这是我的过程:
stylesheets/custom.css: .my-class {
color: #fff;
background-color: #00eb00;
}@import "custom";yarn run build:css.my-class在builds/application.css但是当我尝试在HTML中使用id时,没有添加CSS。为什么?我应该把它放在别的地方吗?
编辑:--我让它运行,但只有当我手动运行rails资产时:预编译,然后是bin/dev。为什么每次更改时都需要预编译?
发布于 2022-05-25 18:13:17
在一个新的rails 7应用程序(使用css=bootstrap)中,下面是我为获得定制的css样式所做的工作:
gem 'sass-rails,然后捆绑安装(关于该这里的更多信息)//= link example.css<%= stylesheet_link_tag "example", "data-turbo-track": "reload" %>bin/dev而不是rails server启动服务器h1 {
color: green;
}资源
发布于 2022-08-09 13:04:54
我只是遇到了这个问题,并注意到JavaScript和CSS都不会在更改后重新编译。如果您将gem jsbundling-rails包含在您的how文件中,请查看https://github.com/rails/jsbundling-rails以获得更多细节和方法-tos。运行yarn run build:css重新编译CSS资产。
我更喜欢使用./bin/dev启动本地服务器并监视JavaScript和CSS更新。
发布于 2022-11-23 11:02:47
您需要在CSS/JS中更改后预编译资产。
rails assets:precompilehttps://stackoverflow.com/questions/71300845
复制相似问题