在 Rails 6 中使用 webpacker 导入 CSS
Importing CSS with webpacker in Rails 6
我将 webpacker 与 Rails 一起使用,现在正在安装 taildwindcss。如果我使用 postcss-import
,他们的 installation guide 说要使用 @import
方法。我必须说,每当我必须使用 webpacker 将 CSS 导入 Rails 时,我都会感到困惑,所以我有几个问题:
1) 文档中的 @import
方法 - 它是 JavaScript 还是 CSS 导入方法?
2) 如果它是一个 CSS 方法,为什么我必须将它粘贴到 javascript 文件夹中(例如 javascript/stylesheets
?我试图将它放在 application.css 文件,它不起作用。我认为这与它使用 PostCSS 并且包是通过 yarn?
安装的事实有某种关系
3) 如果以上内容属实,是否意味着我必须以这种方式导入每个 CSS 包(如果它是通过 yarn 安装的)?
您可能真的想要导入 CSS 和 javascript!
典型的设置会有 app/javascript/styles/application.css
例如这将 bootstrap 你的全局 css:
@import "tailwindcss/base";
@import "tailwindcss/components";
@import "components/buttons"; // custom components that map to path app/javascript/styles/components/buttons.css for example
@import "tailwindcss/utilities";
在您的 app/javascript/packs/application.js
中,您将导入:
// other js
import('styles/application.css');
// other js
在您的布局中,您将添加 <%= stylesheet_pack_tag 'application' %>
以添加来自 application.js 的 css 和 <%= javascript_pack_tag 'application' %>
以添加来自 application.js 的 javascript .
此设置的原因是 webpack 将处理 application.js 并且它将单独处理 CSS 和 JS。将 javascript/pack/application.js
视为 bootstrap/dependencies 文件而不是 运行 javascript 文件。它说 here's a list of stuff I need to work
。在这种情况下,其中一个事情是app/javascript/styles/xyz.css
,顺便使用post-css来管理它的处理方式。
我将 webpacker 与 Rails 一起使用,现在正在安装 taildwindcss。如果我使用 postcss-import
,他们的 installation guide 说要使用 @import
方法。我必须说,每当我必须使用 webpacker 将 CSS 导入 Rails 时,我都会感到困惑,所以我有几个问题:
1) 文档中的 @import
方法 - 它是 JavaScript 还是 CSS 导入方法?
2) 如果它是一个 CSS 方法,为什么我必须将它粘贴到 javascript 文件夹中(例如 javascript/stylesheets
?我试图将它放在 application.css 文件,它不起作用。我认为这与它使用 PostCSS 并且包是通过 yarn?
3) 如果以上内容属实,是否意味着我必须以这种方式导入每个 CSS 包(如果它是通过 yarn 安装的)?
您可能真的想要导入 CSS 和 javascript!
典型的设置会有 app/javascript/styles/application.css
例如这将 bootstrap 你的全局 css:
@import "tailwindcss/base";
@import "tailwindcss/components";
@import "components/buttons"; // custom components that map to path app/javascript/styles/components/buttons.css for example
@import "tailwindcss/utilities";
在您的 app/javascript/packs/application.js
中,您将导入:
// other js
import('styles/application.css');
// other js
在您的布局中,您将添加 <%= stylesheet_pack_tag 'application' %>
以添加来自 application.js 的 css 和 <%= javascript_pack_tag 'application' %>
以添加来自 application.js 的 javascript .
此设置的原因是 webpack 将处理 application.js 并且它将单独处理 CSS 和 JS。将 javascript/pack/application.js
视为 bootstrap/dependencies 文件而不是 运行 javascript 文件。它说 here's a list of stuff I need to work
。在这种情况下,其中一个事情是app/javascript/styles/xyz.css
,顺便使用post-css来管理它的处理方式。