我正在尝试构建一个新的Rails 7项目,测试Hotwire和一些新的默认功能。我对将Webpacker(也许还有React)抛在脑后的想法感到兴奋。但是我在弄清楚如何让daisyUI在新的工具链中与Tailwind一起工作方面遇到了麻烦。
我用--css tailwind
创建了这个应用程序,运行了./bin/importmap pin daisyui
,在config/importmap.rb
中添加了一大堆行,并在config/tailwind.config.js.
中的插件数组中添加了require("daisyui")
但是当我运行./bin/dev,
时,我得到的结果是:
13:30:55 web.1 | started with pid 36044
13:30:55 css.1 | started with pid 36045
13:30:56 web.1 | => Booting Puma
13:30:56 web.1 | => Rails 7.0.2.3 application starting in development
13:30:56 web.1 | => Run `bin/rails server --help` for more startup options
13:30:56 web.1 | Puma starting in single mode...
13:30:56 web.1 | * Puma version: 5.6.4 (ruby 3.1.1-p18) ("Birdie's Version")
13:30:56 web.1 | * Min threads: 5
13:30:56 web.1 | * Max threads: 5
13:30:56 web.1 | * Environment: development
13:30:56 web.1 | * PID: 36044
13:30:56 web.1 | * Listening on http://127.0.0.1:3000
13:30:56 web.1 | * Listening on http://[::1]:3000
13:30:56 web.1 | Use Ctrl-C to stop
13:30:57 css.1 | node:internal/modules/cjs/loader:933
13:30:57 css.1 | const err = new Error(message);
13:30:57 css.1 | ^
13:30:57 css.1 |
13:30:57 css.1 | Error: Cannot find module 'daisyui'
13:30:57 css.1 | Require stack:
13:30:57 css.1 | - /Users/phillip/Dev/test_project/config/tailwind.config.js
13:30:57 css.1 | - /snapshot/tailwindcss/lib/cli.js
13:30:57 css.1 | - /snapshot/tailwindcss/standalone-cli/standalone.js
13:30:57 css.1 | 1) If you want to compile the package/file into executable, please pay attention to compilation warnings and specify a literal in 'require' call. 2) If you don't want to compile the package/file into executable and want to 'require' it from filesystem (likely plugin), specify an absolute path in 'require' call using process.cwd() or process.execPath.
13:30:57 css.1 | at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
13:30:57 css.1 | at Function._resolveFilename (pkg/prelude/bootstrap.js:1819:46)
13:30:57 css.1 | at Function.Module._load (node:internal/modules/cjs/loader:778:27)
13:30:57 css.1 | at Module.require (node:internal/modules/cjs/loader:1005:19)
13:30:57 css.1 | at Module.require (pkg/prelude/bootstrap.js:1719:31)
13:30:57 css.1 | at Module.require (/snapshot/tailwindcss/standalone-cli/standalone.js:21:22)
13:30:57 css.1 | at require (node:internal/modules/cjs/helpers:94:18)
13:30:57 css.1 | at Object.<anonymous> (/Users/phillip/Dev/test_project/config/tailwind.config.js:20:5)
13:30:57 css.1 | at Module._compile (node:internal/modules/cjs/loader:1101:14)
13:30:57 css.1 | at Module._compile (pkg/prelude/bootstrap.js:1758:32) {
13:30:57 css.1 | code: 'MODULE_NOT_FOUND',
13:30:57 css.1 | requireStack: [
13:30:57 css.1 | '/Users/phillip/Dev/test_project/config/tailwind.config.js',
13:30:57 css.1 | '/snapshot/tailwindcss/lib/cli.js',
13:30:57 css.1 | '/snapshot/tailwindcss/standalone-cli/standalone.js'
13:30:57 css.1 | ],
13:30:57 css.1 | pkg: true
13:30:57 css.1 | }
13:30:57 css.1 | exited with code 0
13:30:57 system | sending SIGTERM to all processes
13:30:57 web.1 | - Gracefully stopping, waiting for requests to finish
13:30:57 web.1 | Exiting
13:30:57 web.1 | terminated by SIGTERM
我肯定我错过了很基本的东西,但它是什么呢?
我可以告诉你,它 * 不是 * 将import "daisyui"
或import "daisy"
添加到app/javascripts/application.js
。
2条答案
按热度按时间osh3o9ms1#
看起来目前还没有一种方法可以将第三方插件与独立的Tailwind CLI一起使用。现在对我来说,最好的解决方案是在我的
layouts/application.html.erb
中添加一个指向CDN的链接:我想我在Tailwind上失去了从daisyUI中修剪掉不需要的CSS,但这在这个阶段不是一个重要的问题。
gkl3eglg2#
对我来说,通过npm添加daisyui,然后把它放到tailwind.config.js的要求中就解决了这个问题,就像官方网站上提到的那样。现在似乎没有办法用importmaps来使用它。
module.exports = {plugins: [require("daisyui")]}