小编Wag*_*ira的帖子

Ruby on Rails如何获取当前的URL?

我正在尝试使用rails中的当前URL request.host,request.url但我有一个位于2个域中的网站,因此:

当我在www.example1.comrequest.host或的.url秀www.example1.com

当我在www.example2.comrequest.host或.URL显示example1.com ,因为例题正从例1的所有内容,并在例2显示(解析)

因为request.host得到了真正的主机,而request.url得到主机也是我真的需要在浏览器中获取url而不是主机,有人可以帮忙吗?

OB:我正在使用rails 4和ruby 2 OBs2:request.domain不起作用,这只返回url的".com"

ruby-on-rails cross-domain

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

Rubocop 抱怨 Metrics/AbcSize

所以我试图在这里采取正确的路径并了解如何解决这个警察,在我看来这看起来像是一小段代码,为什么它会抱怨?

移动嵌套的 if-else 不会改变任何东西,关于如何解决这个警察有什么建议吗?

 class WebPush::Register

  include Interactor

  # rubocop:disable Metrics/AbcSize
  def call
    user = Learner.find_by(id: context.user_id)

    # return if existing
    if user.web_push_subscription
      context.subscription = user.web_push_subscription
    else
      subscription = WebPushSubscription.new(
        endpoint:   context.push_params[:endpoint],
        auth_key:   context.push_params[:keys][:auth],
        p256dh_key: context.push_params[:keys][:p256dh],
        learner:    user
      )

      if subscription.save
        context.subscription = subscription
      else
        context.error = subscription.errors.full_messages
        context.fail!
      end
    end
  end
  # rubocop:enable Metrics/AbcSize

end
Run Code Online (Sandbox Code Playgroud)

ruby metrics ruby-on-rails code-metrics rubocop

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

Typescript:如何输入处理异步操作的自定义 redux 中间件

我希望每个人这个周末都过得很好!

免责声明:我已经研究了一整天,在尝试了很多事情之后,我打开了 20 多个 StackOverflow 链接并阅读了它们,然后才来寻求帮助......

我有这个自定义的 redux 中间件,它的目的是捕获失败的承诺并为每个承诺分派一个操作。

const errorMiddleware: Middleware =
  ({ dispatch }: MiddlewareAPI) =>
  (next: Dispatch) =>
  async (action: AnyAction) => {
    const { meta, payload } = action;
    const { withErrorHandler, defaultErrorCode } = meta;

    const isPromise = getIsPromise(payload);

    if (isPromise && withErrorHandler) {
      return next(action)
        .catch(errorHandler(defaultErrorCode))
        .catch((handledError: ISystemError) =>
          Promise.reject(
            handledError.shouldSkipHandleError
              ? handledError
              : dispatch(addError(handledError))
          )
        );
    }

    return next(action);
  };
Run Code Online (Sandbox Code Playgroud)

我想解决的问题是async (action: AnyAction) => {

我收到一条错误消息说

Argument of type 'AsyncThunkAction<number, number, {}>' …
Run Code Online (Sandbox Code Playgroud)

middleware typescript redux-middleware redux-toolkit

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

React-use-gesture 不适用于 Storybook

我有我的组件和故事书故事文件,它没有错误地呈现,但它不能拖动。我将我的研究基于react-use-gesture Github 中的这个示例。我注意到,如果我使用 create-react-app 启动一个新项目并将此代码粘贴到那里,它可以正常工作,但是使用 storybook 就行不通了。我还注意到,在我的代码中,元素看起来像而不是(来自有效示例的代码),我一直在研究,但找不到解决方案,所以我来寻求这个很棒的社区的帮助。<div style="x: 0px; y: 0px;"></div><div style="transform: none;"></div>

目标:在反应故事书上有一个可拖动的卡片组件故事,使用react-springreact-use-gesture

预期结果:能够拖动组件。

实际结果:组件不可拖动

错误消息:无。

组件的代码

import React from 'react'
import { useSpring, animated } from 'react-spring'
import { useDrag } from 'react-use-gesture'

export function Card() {
  const [props,
    set] = useSpring(() => ({ x: 0, y: 0, scale: 1 }))
  const bind = useDrag(({ down, movement: [x, y] }) => {
    set({ x: down …
Run Code Online (Sandbox Code Playgroud)

reactjs storybook react-spring

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

使用javascript检查obj中的属性

所以我试图使用switch case,但这似乎不是这样的.

我尝试着

switch (obj) {
    case hasPropertyA:
        console.log('hasPropertyA');
        break;
    case hasPropertyB:
        console.log('hasPropertyB');
Run Code Online (Sandbox Code Playgroud)

我期待这会做obj.hasPropertyX,如果它收到一个真值,在任何case语句中显示控制台,但不是

有人有办法做到这一点吗?我有很多属性做检查所以我不能只使用if(obj.hasOwnProperty(prop)){},这就是为什么我在尝试切换case语句

javascript

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