【问题标题】:Has Anyone Used Chronic or ChronicDuration in VoltRB?有人在 VoltRB 中使用过 Chronic 或 ChronicDuration 吗?
【发布时间】:2015-12-02 21:28:09
【问题描述】:

我已将chronicchronic_duration gem 放入我的Gemfile,并且在volt console 中一切正常。但是,如果我在客户端尝试任何操作,我会收到名称错误。我尝试在客户端初始化程序中要求它们,但这没有帮助。

有什么建议吗?

【问题讨论】:

  • 是的。在我的 app/config/clients_configuration.rb 文件中。
  • 我会尝试在控制器中要求它并在那里使用它。

标签: client duration voltrb opalrb chronic


【解决方案1】:

只是为了补充 Elia 的答案,在 Volt 中,您可以将 use_gem 放入 config/dependencies.rb(在文档中 here

这确实可以加载 Chronic,但看起来 Chronic 不会在 Opal 中运行,因为它使用可变字符串 - 我收到以下错误:

Uncaught NotImplementedError: #<< not supported. Mutable String methods are not supported in Opal.

【讨论】:

  • 我将把它标记为正确答案。我试图将 Chronic 移植到 RubyMotion 并且不能,因为它使用 require 并且不受支持。这些是最好的时间库,但它们依赖于核心 Ruby 规范中定义的特性,但在某些实现中被忽略了。叹。显然,@elia 的回答也是正确的,但 SO 让我选择其中一个。
  • 没问题,把它作为正确答案 :) – 无论如何,我发现大多数 gem 会接受 PR,以避免使用可变字符串,因为它们很少成为性能瓶颈。
【解决方案2】:

您需要将 gem 的路径添加到 Opal/sprockets 搜索文件的路径中。

对于宝石有一个很好的帮手:

 Opal.use_gem "chronic"

这应该在初始化过程中尽早进入 CRuby 代码 (MRI)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-05
    • 2010-12-05
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2010-09-16
    • 1970-01-01
    相关资源
    最近更新 更多