Rails幼幼班--Rails安装Tailwindcss


用gem跟CDN不好吗...

这麽简单的事情也要分享??

因为,没常安装就忘东忘西了...

认命做一篇笔记...

快速设定,预设模式全开,如需客制,请再至官网查询。

Rails 6.1.4.1
ruby 2.7.3

$ rails new project_name
#完成後至专案底下
$ rails webpacker:install
#完成後
$ yarn add tailwindcss  #就习惯用yarn
#完成後
$ yarn tailwindcss init --full

Project专案会多一个档案project/tailwind.config.js
内容:https://unpkg.com/browse/[email protected]/stubs/defaultConfig.stub.js
这是第一段,安装了什麽,原理,等会用了再说-0-"


接着设定引用。

於app/javascript新增一资料夹,命名stylesheets,不一定要命名这个,故意与Rails原生的asset pipeline相同而已。
将刚刚产生的tailwind.config.js,移入此资料匣。
https://ithelp.ithome.com.tw/upload/images/20210826/20135887h1GArCpTX4.png

同资料夹再增新一个档案,命名application.scss,不一定要命名这个,故意与Rails原生的asset pipeline相同而已。里面输入以下资讯。

@import "tailwindcss/base";
@import "tailwindcss/components";
@import "tailwindcss/utilities";

https://ithelp.ithome.com.tw/upload/images/20210826/20135887I5KkTVOLbJ.png

接着到专案底下有个postcss.config.js档案,内容预设如下

module.exports = {
  plugins: [
    require('postcss-import'),
    require('postcss-flexbugs-fixes'),
    require('postcss-preset-env')({
      autoprefixer: {
        flexbox: 'no-2009'
      },
      stage: 3
    })
  ]
}

修改後
module.exports = {
  plugins: [
    require('tailwindcss')('./app/javascript/stylesheets/tailwind.config.js'),
    require('postcss-import'),
    require('postcss-flexbugs-fixes'),
    require('postcss-preset-env')({
      autoprefixer: {
        flexbox: 'no-2009'
      },
      stage: 3
    })
  ]
}
#更改为环境变数再套用等,超过幼幼班了...
#另外故意采用完整写法,网路上有许多比较简写的文章。

https://ithelp.ithome.com.tw/upload/images/20210826/20135887M5HGxyFnWc.png

接着到app/views/layouts/application.html.erb,增加一段code。

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
<!-- 新增下面这行 -->
<%= stylesheet_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
<!-- 新增上面那行 -->
<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>

最後到app/javascript/packs/application.js 加入

import "stylesheets/application"

https://ithelp.ithome.com.tw/upload/images/20210826/201358876EIsbSIV65.png

安装Tailwinds到这边,接着测试。


测试

指令快速建立

$ rails g controller tailwind index

进routes.rb改一下内容

Rails.application.routes.draw do
  root 'tailwind#index'
end

接着启动Rails s
如果看到以下画面
https://ithelp.ithome.com.tw/upload/images/20210826/20135887pTJ6SYBQqo.png
代表载入失败,<"h1">还是一样是大字。

关掉服务器,请先依序於专案下操作这两个指令。

$ npm uninstall tailwindcss postcss autoprefixer
$ npm install -D tailwindcss@npm:@tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9

接着开启Rails s,如以下画面,html都已经经过reset。(我的示范画面调整过Margin了。)
https://ithelp.ithome.com.tw/upload/images/20210826/20135887Cq5hE5AsVj.png
代表成功了

如果无法排除,那可能就是档案名之类的错误...
(打错字....万一是我打错字怎麽办...)

修改app/views/tailwind/index.html.erb

<h1 class="m-8 text-6xl text-red-900">Tailwind#index</h1>
<p class="font-bold text-green-800">Find me in app/views/tailwind/index.html.erb</p>

重整服务器後,如果有看到字体变化代表完成。


好东西连结。
使用Foreman:龙哥--如何在 Rails 使用 Webpacker(上)


<<:  本来只想探讨Pillow histogram在人脸辨识的运用,却扯出了一堆疑问….

>>:  Ruby幼幼班--Factorial Trailing Zeroes

浏览器向 Web 服务器提交用户密码最可行的方法-原始密码(Raw password )

“原始密码(Raw password)”和“散列密码(hashed password)”是可行的解决...

IOS 菜菜菜鸟30天挑战 Day-29 本地推播

今天来讲讲本地推播 1.先导入推播 import UserNotifications 2.先获取权限...

【Day 06】C 的资料型态(下)

今天,我们来介绍一下常见的基本型别吧~ 基本型别 - 整数型别 - int int 型态是有正负号的...

开个六给他,让他赢庄家一百块 - 根据五档报价之期货买卖

原本想要实作根据五档挂买卖下单,发现 snapshots 没有五档买卖价格 假如我今天就是想挂某一档...

Day 5 - 虚拟机配置&实体手机测试

补充 因为昨天忘了讲,今天先补充一下。 如果你觉得前几代的iphone不是全萤幕很丑的话,是可以换的...