小编223*_*eca的帖子

React-Native/Redux调度多次激活

我正在制作一个React/Redux应用程序.在我的一个动作中,dispatch在没有明显原因的情况下被射击6-8次.请参阅addMarkersRequestAddress下面的组件的操作文件:

export function addMarkersSuccess(response) {
  return {
    type: 'addMarkersSuccess',
    status: 'success',
    response: response,
    receivedAt: Date.now(),
  };
}

export function addMarkersFailure(error) {
  return {
    type: 'addMarkersFailure',
    status: 'error',
    error: error,
    receivedAt: Date.now(),
  };
}

export function addMarkersRequestCoordinates(submitFormData) {


  // Why is this always returning addMarkersFailure? Is it possibly related to why it always fires multiple times?
  // Same code as in virtualFenceWalk actions
  return (dispatch) => {

    console.log('running addMarkersRequestCoordinates');
    console.log('submitFormData: ',submitFormData);

    let JSONbody = JSON.stringify(submitFormData);
    console.log('JSONbody: ',JSONbody); …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-native redux

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

如何使用 Terraform 将 AWS 弹性 IP 分配给新创建的 EC2 实例,而不会在创建另一个实例时重新分配它?

我目前有以下 Terraform 计划:

provider "aws" {
  region = var.region
}

resource "aws_instance" "ec2" {
  ami             = var.ami
  instance_type   = var.instanceType
  subnet_id       = var.subnet 
  security_groups = var.securityGroups 

  timeouts {
    create = "2h"
    delete = "2h"
  }

  tags = {
    Name = "${var.ec2ResourceName}"
    CoreInfra = "false"
  }

  lifecycle {
    prevent_destroy = true
  }

  key_name = "My_Key_Name"

  connection {
    type        = "ssh"
    user        = "ec2-user"
    password    = ""
    private_key = file(var.keyPath)
    host        = self.public_ip
  }

  provisioner "file" {
    source      = "/home/ec2-user/code/backend/ec2/setup_script.sh"
    destination = …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 amazon-web-services elastic-ip terraform

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

如何在 Golang 中 BindJSON

我正在将表单数据传递给 Go 中的控制器。我已验证数据是否已到达控制器,因为其值出现在这些变量中:

emailValue := c.PostForm("email");
passwordValue := c.PostForm("password");
Run Code Online (Sandbox Code Playgroud)

然而,我正在开发一个样板项目来尝试自学 Go,并且我对其中包含的一些进一步处理感到困惑。“无效的登录表单”错误总是在以下函数中触发:

func (ctrl UserController) Signin(c *gin.Context) {
var signinForm forms.SigninForm

if c.BindJSON(&signinForm) != nil {
    c.JSON(406, gin.H{"message": "Invalid signin form", "form": signinForm})
    c.Abort()
    return
}

user, err := userModel.Signin(signinForm)
if err == nil {
    session := sessions.Default(c)
    session.Set("user_id", user.ID)
    session.Set("user_email", user.Email)
    session.Set("user_name", user.Name)
    session.Save()

    c.JSON(200, gin.H{"message": "User signed in", "user": user})
} else {
    c.JSON(406, gin.H{"message": "Invalid signin details", "error": err.Error()})
}

}
Run Code Online (Sandbox Code Playgroud)

通过阅读文档和其他 Stack Overflow 问题,我无法弄清楚 BindJSON …

go

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

如何将 NODE_EXTRA_CA_CERTS 的值传递给使用无服务器部署的 AWS Lambda?

我正在使用Serverless部署 Node AWS Lambda。由于运行此代码的机构的内部要求,我需要通过额外的证书。我能找到的唯一解决方案是将NODE_EXTRA_CA_CERTS作为 CLI 参数传递。使用典型的环境变量(例如在dotenv定义)不起作用,因为此时在 Node 中已经配置了证书。

我的额外证书位于MyCerts.pem项目根目录中,我尝试运行的 Lambda 函数称为function1. 在本地运行 LambdaNODE_EXTRA_CA_CERTS=./MyCerts.pem npx serverless invoke local -f function1 -l可以正常工作。但是,一旦我使用 部署到 AWS npx serverless deploy -v,我就找不到正确包含这些附加证书的方法,包括使用NODE_EXTRA_CA_CERTS=./MyCerts.pem npx serverless invoke -f function1 -l.

我已经尝试了所有我能想到的方法并且不知所措。有人可以帮忙吗?

ssl-certificate amazon-web-services node.js aws-lambda serverless

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

如何在React Native中的Google Maps上实现可拖动,可调整大小的多边形?

我在React Native中创建了一个应用程序.应用程序的一部分是由多边形表示的地理围栏,我希望用户能够使用他们的手指轻松拖动和调整多边形.

Google Maps API文档提供了使用纯JavaScript拖动(但不调整大小)多边形的明显示例.但是,由于直接将Google地图集成到React中似乎没有真正起作用,我使用的是react-native-maps.似乎多边形的可拖动属性在那里不可用.A marker可以拖动,我可能会根据标记的新位置重新渲染多边形,但是1)标记拖动速度很慢,需要在标记上升一秒钟之前将标记向下推,并且2)重新开始-render不会流动.这就是拖动标记的样子(请注意我还没有对多边形重新渲染进行编码):

在此输入图像描述

它很笨重 - 你通常需要按几次才能真正拿起标记.动画很慢.如果你没有关闭mapv​​iew滚动(我有,但它需要在生产中),你经常最终滚动地图而不是移动标记.

我知道我想要的是可能的,因为我经常使用的应用程序做了类似的事情.见下文:

在此输入图像描述

这个应用程序显然使用谷歌地图,虽然我无法验证它是否使用React Native.如何实现相同的流动性和易用性?

编辑1:鉴于浪费时间的浪费动画marker似乎硬编码,我相当肯定成功解决我的问题根本不会使用markers.来自另一个应用程序的工作示例似乎也没有使用它们.

值得注意的是,如果我添加onPress= { (e) => console.log(e.nativeEvent.coordinate) }到MapView组件,无论我在地图上单击哪里,都会获得纬度/经度的即时控制台日志.应该可以将这些点存储在定义多边形形状的对象中.然后问题变成1)如何流畅地重新渲染多边形(并且只有多边形),以及2)当你不使用时,MapView API不具有在按下时连续触发的事件marker.

另一方面,API 确实具有一个事件,onMarkerDrag在拖动时会持续触发marker.

google-maps ios geofencing react-native react-native-maps

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

当输入值由另一个输入字段设置时,Material-UI InputLabel 覆盖文本

我正在创建一个带有Material UI的表单。该表格有两个部分。一个是用户的送货地址,另一个是账单地址。在许多情况下,后者与前者相同,因此我提供了一个复选框来自动填写帐单地址和送货地址。它通过调用一个函数来实现,该函数将待更新字段的值设置为等于另一个字段的值,该值保存在 React 状态中。

MUIInput组件自己处理字段。该InputLabel组件还用于标记它们。通常,在字段中输入值时,InputLabel文本会像这样移动到字段上方:

上面的输入标签

但是,当检查复选框并通过在送货地址字段中键入帐单地址字段中的值填充值时,标签将失败使其失去:

在此处输入图片说明

我一直无法解决这个问题,Stack Overflow 上的类似问题似乎也没有解决我的问题。我该如何解决?

编辑:

这是屏幕截图中的代码:

<Grid container spacing={40} className={classes.formContainer}>
  <Grid item xs>
  </Grid>
  <Grid item xs>
    <FormControlLabel
      control={
        <Checkbox
          checked={this.state.sameAddressScreen2}
          onChange={this.handleSameAddressScreen2}
          value="sameAddressScreen2"
        />
      }
      label="Same as Location Address"
    />
  </Grid>
</Grid>
<Grid container spacing={40} className={classes.formContainer}>
  <Grid item xs={6}>
    <FormControl margin="normal" required fullWidth>
      <InputLabel htmlFor="locationStreetAddress1">Street Address 1</InputLabel>
      <Input id="locationStreetAddress1" name="locationStreetAddress1" autoFocus value={this.state.locationStreetAddress1} onChange={this.handleChange} />
    </FormControl>
  </Grid>
  <Grid item xs={6}>
    <FormControl margin="normal" required fullWidth>
      <InputLabel htmlFor="mailingStreetAddress1">Street Address 1</InputLabel> …
Run Code Online (Sandbox Code Playgroud)

forms reactjs material-ui

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

使用 Golang/Gin 后端 POST HTML 表单

我正在尝试将一个简单的 HTML 表单发布到我的后端,它使用 Golang 和Gin。这是 HTML:

<form action="/login" method="post" name="loginForm">
          <div>
            <input type="text" placeholder="Email" name="email"></input>
          </div>
          <br /><br />
          <div>
            <input type="password" placeholder="Password" name="password"></input>
          </div>
          <br /><br />
          <input type="submit"></input>
          <br /><br />
        </form>
Run Code Online (Sandbox Code Playgroud)

这是我的路线main.go

r.POST("/login", func(c *gin.Context) {
        //What do I need to put here?
        formContent := c.PostForm("loginForm")

        c.JSON(200, gin.H{
            "status":  "posted to login",
            "message": "whoo",
            "form": formContent})
    })
Run Code Online (Sandbox Code Playgroud)

当我提交表单时,我收到 JSON 响应,但它formContent是一个空字符串。我猜我在 上使用了错误的方法c,但我对 Golang 不太有经验,所以不知道用什么来替换它。我也不确定 Gin 在这里引入了哪些附加功能,因为我本质上是通过示例项目中的反复试验来学习的。

如何正确访问后端的表单数据?

html forms routes go

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

使用 Stripe 的 Checkout 功能后如何获取资金?

我正在使用 Stripe 的结帐功能。我的产品需要几分钟才能生成,因此我想保留资金,仅在客户的产品准备就绪后才向他们收费。是否可以在不重构的情况下使用此功能来做到这一点?

stripe-payments

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

无法访问 React Native 中的 fetch 内部状态

在 React Native 中,我有以下内容:

import React, { Component }                                         from 'react';
import PropTypes                                                    from 'prop-types';
import { StyleSheet, Text, View, TouchableHighlight }               from 'react-native';
import Immutable                                                    from 'immutable';

const styles = StyleSheet.create({
  map: {
    position: 'absolute',
    top: 0,
    left: 0,
    right: 0,
    bottom: '20%',
  },
});

export default class VirtualFenceBottom extends Component {

  constructor(props) {
    super(props);
    this.state = { markers: this.props.markers  };
  }

  populateMarkers = () => {
    let markersVar = this.state.markers;
    fetch('http://localhost:8080/virtualFence', {
      method: 'GET',
      headers: {
        'Content-Type': 'application/json' …
Run Code Online (Sandbox Code Playgroud)

reactjs react-native fetch-api

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