【问题标题】:Styling for Sir Trevor CSS not displaying correctly Ruby On Rails App特雷弗爵士 CSS 的样式无法正确显示 Ruby On Rails 应用程序
【发布时间】:2017-12-20 10:13:08
【问题描述】:

我正在尝试实现一个允许人们创建和编写博客的在线文本编辑器。我看到 SirTrevor 有一个非常漂亮的用户界面,我非常热衷于使用它。

我已经设法让它在技术上运行on these instructions,但 UI 根本不存在;一切都只是文字,没有图标或任何东西。我正在寻找类似于他们网站上列出的example 的东西。我已经安装了 Ruby on Rails Gem,并使用 Bower Install 在我的 Vendor/Assets 文件夹中获取了我需要的文件。 CSS 和 JS 文件似乎都在加载(我可以看到它们的规则)。

当我将提供的示例的源代码与我的比较时,我没有任何 SVG 元素,我想知道这里是否需要做一些额外的事情

我的代码如下:

blogs.coffee:

SirTrevor.setDefaults({
    iconUrl: '/assets/images/sir-trevor-icons.svg'
})
editor = new SirTrevor.Editor({
    el: $('.sir-trevor-area'),
    defaultType: 'Text'
});

文档建议我们使用 document.querySelector("...") 而不是 jQuery,但这会导致更糟糕的结果 - 只是一个纯文本区域

_form.html.erb

<%= form.text_area :main_body, {:class=>"sir-trevor-area"}%>

【问题讨论】:

  • 尝试使用asset_path helper &lt;%= asset_path 'sir-trevor-icons' %&gt;获取资源
  • 谢谢,我认为这是问题的一部分。虽然还是不行

标签: javascript css ruby-on-rails ruby sirtrevor


【解决方案1】:

您需要将 Sir Trevor 资产添加到 Rails 资产中。里面config/initializers/assets.rb

Rails.application.config.assets.precompile += %w(
  sir-trevor/build/sir-trevor-icons.svg
)

路径可能因 Trevor 爵士的安装方法而异,我使用 yarn 安装它,根本没有使用 gem。无论如何,只需在您的安装中找到正确的路径。

【讨论】:

  • 好的,现在我可以使用以下代码查看图标了 。我认为这意味着我的预编译按预期工作,但 sir-trevor 文本区域仍然没有按预期工作
  • “sir-trevor 文本区域仍然无法正常工作”是什么意思?你期待什么,结果会发生什么?
  • 我期望 OP 中链接的示例中的输出。但是我在功能上正常工作,没有应用正确的样式(视觉上几乎像纯文本)。每个块类型只有文本链接,您可以单击并添加块。它没有使用 SVG 中提供的图标。也就是说 CSS 正在加载(我在 DOM 检查器中看到了应用的样式),但没有生成上面链接示例中的 SVG 元素
  • 我现在想知道我的一些宝石之间是否存在冲突,或者可能是某种版本问题......
  • 如果您检查浏览器开发工具上的网络选项卡,您应该会看到与 Sir Trevor SVG 相关的 404 未找到。这是一个好的开始。
猜你喜欢
  • 2017-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多