小编ras*_*vap的帖子

失败的道具类型:向“ForwardRef(Select)”提供的道具“children”无效,需要 ReactNode

您好,我在反应项目中遇到了一些问题,我正在使用钩子,并且作为支撑传递给钩子的方法遇到了问题。我也在使用 materail ui,这是我的代码:

import { Container, Grid, Select, MenuItem } from '@material-ui/core';
import React, { Component } from 'react';
import Store from '../component/store/store'

class StoreBuilder extends Component {
    state = {
        DivisionState: 'Store 1',
        DivisionData: [
            {
                id: 1,
                divDeptShrtDesc: 'Store 1'
            },
            {
                id: 2,
                divDeptShrtDesc: 'Store 2'
            },
            {
                id: 3,
                divDeptShrtDesc: 'Store 3'
            }
        ]
    };
    handleChangeDivision(event) {
        this.setState({ DivisionState: event.target.value });
    }

    renderDivisionOptions() {
        return this.state.DivisionData.map((dt, i) => {
            return (
                <MenuItem
                    key={i}
                    value={dt.divDeptShrtDesc}>
                    {dt.divDeptShrtDesc}
                </MenuItem> …
Run Code Online (Sandbox Code Playgroud)

reactjs react-hooks

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

Material-UI: the Select component doesn't accept a Fragment as a child. Consider providing an array instead

我正在使用材料 ui,我遇到了下一个问题:index.js:1 Material-UI:Select 组件不接受 Fragment 作为子项。考虑提供一个数组。

我的代码是下一个:

import { Container, Grid, Select, MenuItem } from '@material-ui/core';
import React, { Component } from 'react';
import Store from '../component/store/store'

class StoreBuilder extends Component {

   constructor(props) {
    super(props);
       this.state = {
        DivisionState: 'Store 1',
        DivisionData: [
            {
                id: 1,
                divDeptShrtDesc: 'Store 1'
            },
            {
                id: 2,
                divDeptShrtDesc: 'Store 2'
            },
            {
                id: 3,
                divDeptShrtDesc: 'Store 3'
            }
        ]
    }
    this.renderDivisionOptions = this.renderDivisionOptions.bind(this);
    }


    handleChangeDivision(event) {
        this.setState({ DivisionState: event.target.value });
    }

    renderDivisionOptions() {
        return …
Run Code Online (Sandbox Code Playgroud)

reactjs material-ui

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

在 IntelliJ IDEA 中的调试模式下设置最终字段的值

我正在 IntelliJ IDEA 中调试一个方法,在调试模式下我需要设置最终字段的值。是否可以通过某种方式实现?

这是我的 IDE 在调试模式下的图像,我正在尝试更改变量的值collectionId

集成开发环境

java debugging intellij-idea

5
推荐指数
2
解决办法
2656
查看次数

如何创建枚举并对其进行迭代

我正在尝试在 Go 中复制 Java 枚举。我想定义一个枚举,然后对其进行迭代以进行一些验证。在java中是这样的

public enum Direction {
   NORTH,
   NORTHEAST,
   EAST,
   SOUTHEAST,
   SOUTH,
   SOUTHWEST,
   WEST,
   NORTHWEST
}
Run Code Online (Sandbox Code Playgroud)

我想迭代它,像这样:

for (Direction dir : Direction.values()) {
  // do what you want
}
Run Code Online (Sandbox Code Playgroud)

在 Golang 中是否有类似的方法来实现这一点,我正在考虑使用结构,但我认为这不是最好的方法。

有任何想法吗?

enums loops go

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

go install 后导入无法识别包

你好,我是 Golang 新手,安装后我想在我的项目中使用下一个包:\n https://github.com/gin-gonic/gin

\n

创建项目后,我执行了下一个命令来安装 gingonic:

\n
go get -u github.com/gin-gonic/gin\n
Run Code Online (Sandbox Code Playgroud)\n

但是我的项目内部无法识别导入,我知道这与我的 GOROOT 有关,但我无法解决问题。

\n

接下来是我的 Go 环境变量:

\n
GO111MODULE="on"\nGOARCH="amd64"\nGOBIN=""\nGOCACHE="/Users/rpantoja/Library/Caches/go-build"\nGOENV="/Users/rpantoja/Library/Application Support/go/env"\nGOEXE=""\nGOFLAGS=""\nGOHOSTARCH="amd64"\nGOHOSTOS="darwin"\nGOINSECURE=""\nGOMODCACHE="/Users/rpantoja/go/pkg/mod"\nGONOPROXY="github.com/mercadolibre"\nGONOSUMDB="github.com/mercadolibre"\nGOOS="darwin"\nGOPATH="/Users/rpantoja/go"\nGOPRIVATE="github.com/mercadolibre"\nGOPROXY="http://goregistry.furycloud.io/"\nGOROOT="/usr/local/Cellar/go/1.15/libexec"\nGOSUMDB="sum.golang.org"\nGOTMPDIR=""\nGOTOOLDIR="/usr/local/Cellar/go/1.15/libexec/pkg/tool/darwin_amd64"\nGCCGO="gccgo"\nAR="ar"\nCC="clang"\nCXX="clang++"\nCGO_ENABLED="1"\nGOMOD="/dev/null"\nCGO_CFLAGS="-g -O2"\nCGO_CPPFLAGS=""\nCGO_CXXFLAGS="-g -O2"\nCGO_FFLAGS="-g -O2"\nCGO_LDFLAGS="-g -O2"\nPKG_CONFIG="pkg-config"\nGOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/gz/zfy97n595rs5w_t0dr9wr29dzzxvs4/T/go-build960054223=/tmp/go-build -gno-record-gcc-switches -fno-common"\n
Run Code Online (Sandbox Code Playgroud)\n

这就是我的项目的配置方式:

\n

在此输入图像描述

\n

在此输入图像描述

\n

在此输入图像描述

\n

\xc2\xba

\n

安装包后:

\n

在此输入图像描述

\n

package go goland

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

Kotlin 中的重载方法会生成下一个错误 平台声明冲突:以下声明具有相同的 JVM 签名

你好,我在 Kotlin 中定义了两个方法,我的想法是重载方法并获取不同类型的参数。

接下来是我的方法:

private fun methodOverloaded(singleList: List<Tool>, mkUrl: String?, commentStyle: String, resultsPageUri: String?, githubCommentExperiment: String){

}

private fun methodOverloaded(singleList: List<GroupedTool>, mkUrl: String?, commentStyle: String, resultsPageUri: String?, githubCommentExperiment: String){

}
Run Code Online (Sandbox Code Playgroud)

我有两种带有 type 参数的方法List<Tool>和另一种List<GroupedTool>方法,但 JVM 发送错误,指出数据类型相同,即使它们是不同类型的 List,不确定在 Kotlin 或 Java 中是否可以做到这一点。

有任何想法吗?

overloading kotlin

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

在 kotlin 中返回不同类型的对象

我正在使用一种返回不同类型对象的方法,我使用了 Any 类型返回,但是有没有更好的选择来实现这一点?这是我的方法:

override fun getNavItemById(dCSServiceContext: DCSServiceContext): Observable<Any> {
        return scribeProvider.getNavItemById(dCSServiceContext).map { navItem ->
            scribePresenter.presentNativeItem(navItem)
        }.toObservable()
    }
Run Code Online (Sandbox Code Playgroud)

在我对返回的对象进行转换后,使用 when 运算符,我正在做这样的事情:

 when (item) {
                            is NavItem -> {
                                if (parentItem.hasChildren) {
                                    parentItem.items?.add(item)
                                    recursiveItem = item
                                }
                            }
                            is Image -> {
                                if (parentItem.hasImages) {
                                    parentItem.image = Image(item.image, item.selectedImage)
                                    recursiveItem = parentItem
                                }
                            }
                        }
Run Code Online (Sandbox Code Playgroud)

我的另一个疑问是如何使用这种方法并用另一种方法提取这种类型的对象。

谢谢!!!

return object kotlin

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

Java从findFirst()返回Optional &lt;String&gt;

我现在正在使用Optional,并且必须从findFirst()方法返回一个String。我知道findFirst返回一个Optional,但我想返回一个Optional<String>方法签名。

@Override
    public Optional<String> findBetweenMinAgeAndMaxAge(int kidAge, String id) {
        String query = buildFindRoomByKidAge();
        JsonObject params = JsonObject.create()
                .put(JAVA_TYPE_PARAM, ShipRoom.class.getName())
                .put(ID_PARAM, id)
                .put(KID_AGE_PARAM, kidAge);

        N1qlQuery queryWithParameter = N1qlQuery.parameterized(query, params);

        return template.findByN1QLProjection(queryWithParameter, Room.class)
                .stream()
                .findFirst();
    }
Run Code Online (Sandbox Code Playgroud)

有什么复杂的方法可以实现这一目标吗?

我做了下一个:

@Override
    public Optional<String> findBetweenMinAgeAndMaxAge(int kidAge, String id) {
        String query = buildFindRoomByKidAge();
        JsonObject params = JsonObject.create()
                .put(JAVA_TYPE_PARAM, ShipRoom.class.getName())
                .put(ID_PARAM, id)
                .put(KID_AGE_PARAM, kidAge);

        N1qlQuery queryWithParameter = N1qlQuery.parameterized(query, params);

        return Optional.ofNullable(template.findByN1QLProjection(queryWithParameter, Room.class)
                .stream()
                .findFirst().get().getId());
    }
Run Code Online (Sandbox Code Playgroud)

但是我认为应该有一个更好的解决方案。有什么建议吗?

谢谢!

java return optional

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

Pmd 规则:过多的静态导入可能导致 unitTest 中的代码乱七八糟

我有一个疑问,我有一个类,我在其中对导入常量使用不同的静态导入,我的问题是我收到错误消息:Too many static imports may lead to messy code. 但是在单元测试中看起来这不是一个坏习惯。例如在单元测试类中,我使用这个导入有任何问题:

import static com.rccl.middleware.kidsclub.engine.web.controller.KidController.KID_FIND_PATH;
import static com.rccl.middleware.kidsclub.engine.web.controller.KidController.KID_LIST_PATH;
import static com.rccl.middleware.kidsclub.engine.web.controller.KidController.KID_PATH;
import static com.rccl.middleware.kidsclub.engine.web.controller.KidController.KID_REGISTER_ALL_PATH;
import static org.hamcrest.Matchers.hasSize;
import static org.hamcrest.Matchers.is;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.BDDMockito.given;
import static org.mockito.BDDMockito.then;
import static org.mockito.Mockito.times;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.request;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;```
Run Code Online (Sandbox Code Playgroud)

相反在我的课堂上:

import static org.springframework.http.HttpStatus.BAD_REQUEST;
import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR;
import static org.springframework.http.HttpStatus.NOT_FOUND;
import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY;
Run Code Online (Sandbox Code Playgroud)

这些导入给我带来了问题,我收到了错误消息:过多的静态导入可能会导致代码混乱。我不太确定为什么。

我无法访问 pmd 文件来找出此问题的真正原因。有什么线索吗?

谢谢!

java pmd static-import

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

Ubuntu maven JAVA_HOME环境变量定义不正确

我在 Ubuntu 22.04 中安装了 Maven,当我尝试命令时出现下一个错误mvn clean install

The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
Run Code Online (Sandbox Code Playgroud)

我的 JAVA_HOME 具有下一个值:

echo $JAVA_HOME
/usr/lib/jvm/java-11-openjdk-amd64/bin/
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

谢谢!

ubuntu java-home maven

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