相关疑难解决方法(0)

Rails:预编译资产缺少节点模块

我正在使用我的rails 5.1 app纱线(不是webpacker,只是默认的资产管道).

在开发环境中运行本地服务器,我的资产没有遇到任何问题.

但是一旦我预编译我的资产(环境无关紧要)或让Heroku打包我的资产,我从我的application.sass文件中导入的所有样式表(节点模块)都不再起作用了.

这种行为的原因是sass将所有文件编译成一个输出文件,但由于某种原因似乎错过了@import包含节点模块的语句并分别加载这些文件.

所以这:

@import "components/index.sass"
@import "nodemodule/nodemodule.css"
Run Code Online (Sandbox Code Playgroud)

在开发中编译到这个:

// content of "components/index.sass"
// content of "nodemodule/nodemodule.css"
Run Code Online (Sandbox Code Playgroud)

在生产中:

// content of "components/index.sass"
@import "nodemodule/nodemodule.css"
Run Code Online (Sandbox Code Playgroud)

虽然node_module/nodemodule.css单独加载为资产,但浏览器无法解析它.Javascript工作正常.

css ruby-on-rails sass node-modules yarnpkg

8
推荐指数
3
解决办法
2833
查看次数

标签 统计

css ×1

node-modules ×1

ruby-on-rails ×1

sass ×1

yarnpkg ×1