小编Jul*_*nic的帖子

React-native:检测开发或生产环境

我开发了一个react-native应用程序,其中应该进行一些API调用.

如果我处于生产模式,我的应用应该调用,例如,这个主机:

https://example.com/
Run Code Online (Sandbox Code Playgroud)

但如果我处于开发模式,它应该在不同的端口上调用我的本地主机,例如:

http://192.168.0.10:8080/
Run Code Online (Sandbox Code Playgroud)

本机代码如何能够了解其环境?

.dotenv 似乎不适用于react-native.

在Chrome调试中,我们可以看到应用程序是使用一些参数启动的:

Running application "AppName" with appParams: {"initialProps":{},"rootTag":1}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
Run Code Online (Sandbox Code Playgroud)

我们可以__DEV__在应用程序中获得此值吗?

谢谢

javascript android react-native

30
推荐指数
1
解决办法
1万
查看次数

使用与Sidekiq一起使用的ActiveJob禁用自动重试

有没有办法禁用ActiveJob和Sidekiq的自动重试?

我知道只有Sidekiq,我们只需要放

sidekiq_options :retry => false
Run Code Online (Sandbox Code Playgroud)

如上所述:https://github.com/mperham/sidekiq/wiki/Error-Handling#configuration

但它似乎不适用于ActiveJob和Sidekiq.

我也知道这里提出的重新启用重试的解决方案:https://stackoverflow.com/a/28216822/2431728

但这不是我需要的行为.

ruby-on-rails sidekiq rails-activejob

19
推荐指数
4
解决办法
1万
查看次数

删除/停用Ruby/Rails隐式转换

有没有办法在Ruby/Rails中删除/停用/猴子补丁隐式转换?

我厌倦了像这样的代码生成的错误:

t = Time.now
t + 3600 == t + 3600.seconds
Run Code Online (Sandbox Code Playgroud)

dt = DateTime.now 
dt + 3600 == dt + 3600.days #(why it's days here and not seconds as with Time ?)
Run Code Online (Sandbox Code Playgroud)

根据添加(或减法)中的日期类型,结果是不同的,因为在时间的情况下,Integer被隐式转换为几秒,而在DateTime的情况下则是天.

编辑:

好.我在这里有一些很棒的答案.
也许更好的方法来"纠正"这种非常不一致的Ruby行为,如果有人试图将Integer/Fixnum添加到日期/时间,则会引发异常.只接受持续时间,你不这么认为吗?

有没有办法做到这一点 ?

ruby ruby-on-rails implicit-conversion

1
推荐指数
1
解决办法
79
查看次数