小编Mic*_*ger的帖子

react-native Modal与SafeAreaView-wrapper无法正常工作

我们有一个FilterComponent渲染一个Modal,但在iPhone X上它的Header位于状态栏中.

我尝试使用SafeAreaView渲染它,但似乎这不起作用:

return (
  <SafeAreaView>
    <Modal
      { ...defaultModalProps }
      onRequestClose={ close }
      style={ styles.container }
      visible={ visible }
    >
      <ModalNavbar close={ close }>
        Filter
      </ModalNavbar>
      <View style={ styles.content }>
        ...
      </View>
    </Modal>
  </SafeAreaView>
);
Run Code Online (Sandbox Code Playgroud)

当FilterModal在iPhoneX上开启时,它仍然在状态栏中,你无法点击任何东西.

不知道怎么解决这个问题?

谢谢.

react-native react-native-ios iphone-x

6
推荐指数
2
解决办法
3960
查看次数

使用Eloquent在Laravel中获得最低价格

有没有更好的方法来获得Laravel Eloquent最低价格的物品?每个产品都有多个ticketTypes,每个ticketType可以有多个价格.

    public function includeLowestPrice(Product $product)
    {

    $lowestPriceTicket = null;

    foreach ($product->ticketTypes()->hasActivePrices()->get() as $type) {
        foreach ($type->prices()->get() as $ticketPrice) {
            if (!$lowestPriceTicket || $ticketPrice->value < $lowestPriceTicket->value) {
                $lowestPriceTicket = $ticketPrice;
            }
        }
    }

    return $lowestPriceTicket ? $this->item($lowestPriceTicket, new TicketPriceTransformer()) : null;
    }
Run Code Online (Sandbox Code Playgroud)

php foreach laravel eloquent

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

在laravel中将arrray值转换为请求中的整数

我想array_diff()在Laravel中使用两个数组.第一个数组如下所示:

    array:4 [
  0 => 7248
  1 => 7249
  2 => 7250
  3 => 7251
]
Run Code Online (Sandbox Code Playgroud)

第二个:

array:4 [
  0 => "7248"
  1 => "7249"
  2 => "7250"
  3 => "7251"
]
Run Code Online (Sandbox Code Playgroud)

这个我跟上了$request->request->get('ids', []);.

如何将一个数组转换为字符串或整数?由于这些数组可能会变大,我真的不想一次转换一个值.

更新:

array_diff()正在做它的工作,尽管有字符串与整数.

提前致谢!

php array-difference laravel

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

PHP Laravel:比这些if语句更好的方法

我需要将佣金分配给新创建的价格.佣金适用于客户,类型和价格.因此,如果有类型佣金,它应该首先获得它,回退到客户端,回退到默认值.

我的代码有效,但感觉有点"if-y".也许有更好的方法吗?

  private function addDefaultOnlineCommission(Price $price)
   {
       $defaultCommission = (object)Commission::DEFAULT_COMMISSIONS;

       $typeCommission = $price->type->commissions()
           ->where('is_online', '=', true)->first();

       $clientCommission = $price->type->client->commissions()
           ->where('is_online', '=', true)->first();


       if (!$clientCommission && !$typeCommission) {
           $commission = $defaultCommission;
       }

       if ($clientCommission && !$typeCommission) {
           $commission = $clientCommission;
       }

       if ($typeCommission) {
           $commission = $typeCommission;
       }

       $price->commissions()->create([
           'commission_type'   => $commission->commission_type,
           'commission_value'  => $commission->commission_value,
           'min_value'         => $commission->min_value,
           'is_online'         => true,
           'valid_from'        => Carbon::now()->format('Y-m-d H:i:s'),
       ]);
   }
Run Code Online (Sandbox Code Playgroud)

php laravel eloquent

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