标签: default-value

如果在定义期间出现问题,请定义变量并将其设置为默认值

我的代码中包含以下代码 build.gradle

内容version.properties是:

buildVersion=1.2.3
Run Code Online (Sandbox Code Playgroud)
  • $vGradle构建期间变量的值如下:1.2.3
  • $artifactoryVersionJENKINS构建中变量的值如下:1.2.3.1,1.2.3.2,1.2.3.x ...等等,在Jenkins构建期间,第四位数字是Jenkins BUILD_NUMBER可用于gradle构建脚本.

但是,当我build.gradle在我的桌面上运行这个,我没有可用的BUILD_NUMBER变量或在我的环境变量中设置时,我收到一个错误,说trim()无法在null上工作.(因为BUILD_NUMBER桌面/本地版本没有).

我正试图找到一种方式即

  1. 我应该在我的脚本中编写什么代码,以便如果BUILD_NUMBER不可用,那么代替gradle构建处理失败的错误,它设置jenkinsBuild = "0"(硬编码)否则,选择它在Jenkins构建期间获得的内容.

    例如:在Bash中,我们设置一个变量var1=${BUILD_NUMBER:-"0"},var1如果它可用并设置为一个值,它将设置为有效的Jenkins BUILD编号,否则如果它为NULL,则为var1 = "0".

  2. 我不想让每个开发人员/用户BUILD_NUMBER在一些属性文件中设置它.我想要的是,如果这个变量不存在,那么代码应该放在"0"jenkinsBuilds变量中,并且在桌面构建期间不会出错.我知道在Jenkins构建期间,它工作正常.

// Build Script
def fname = new File( 'version.properties' )
Properties props = new Properties()
props.load( new FileInputStream( fname ) )
def v = props.get( 'buildVersion' )


def env = System.getenv()
def jenkinsBuild …
Run Code Online (Sandbox Code Playgroud)

variables null default-value gradle

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

PHP:bool vs boolean type hinting

我一直在尝试在PHP中使用更多类型提示.今天我正在编写一个带有默认参数的布尔值的函数,我注意到了表单的一个函数

function foo(boolean $bar = false) {
    var_dump($bar);
}
Run Code Online (Sandbox Code Playgroud)

实际上会抛出一个致命的错误:

具有类类型提示的参数的默认值只能为NULL

虽然是类似形式的功能

function foo(bool $bar = false) {
    var_dump($bar);
}
Run Code Online (Sandbox Code Playgroud)

才不是.但是,两者都有

var_dump((bool) $bar);
var_dump((boolean) $bar);
Run Code Online (Sandbox Code Playgroud)

给出完全相同的输出

:布尔值false

为什么是这样?这类似于Java中的包装类吗?

php boolean default-value type-hinting

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

是否可以在 React 中使用 React.useState(() => {}) ?

是否可以使用 afunction作为我的 React 组件的状态?

示例代码在这里:

// typescript 
type OoopsFunction = () => void;

export function App() {
    const [ooops, setOoops] = React.useState<OoopsFunction>(
        () => console.log('default ooops')
    );

    return (
        <div>
            <div onClick={ ooops }>
                Show Ooops
            </div>

            <div onClick={() => {
                setOoops(() => console.log('other ooops'))
            }}>
                change oops
            </div>
        </div>
    )
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用......defaultOoops将在最开始时调用,当单击时change oopsotrher ooops将立即记录到控制台,Show Ooops再次单击后不会记录。

为什么 ?

我可以使用函数作为组件的状态吗?

或者 React 有其特殊的处理方式the function state

default-value typescript reactjs react-hooks

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

是否有更好的PHP方法可以通过数组(字典)中的键获取默认值?

Python中,可以做到:

foo = {}
assert foo.get('bar', 'baz') == 'baz'
Run Code Online (Sandbox Code Playgroud)

PHP中,可以使用三元运算符,如:

$foo = array();
assert( (isset($foo['bar'])) ? $foo['bar'] : 'baz' == 'baz');
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个高尔夫版本.我可以在PHP中更短/更好吗?

php arrays key default-value

46
推荐指数
6
解决办法
3万
查看次数

c#中泛型类型的默认值

Dictionary.TryGetValue的文档说:

当此方法返回时,[value参数]包含与指定键关联的值(如果找到键); 否则,value参数类型默认值.此参数未初始化传递.

我需要在课堂上模仿这个.如何找到T型的默认值?


如何修改此问题以使其显示在搜索中?

返回默认值的确切重复.(C#)

c# generics default-value

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

Typescript - 带接口的类的默认参数

我有一个场景,我有一个接口,有一个像这样的方法:

interface SomeInterface
{
   SomeMethod(arg1: string, arg2: string, arg3: boolean);
}
Run Code Online (Sandbox Code Playgroud)

像这样的一个类:

class SomeImplementation implements SomeInterface
{
   public SomeMethod(arg1: string, arg2: string, arg3: boolean = true){...}
}
Run Code Online (Sandbox Code Playgroud)

现在问题是我似乎无法告诉接口第3个选项应该是可选的还是有一个默认值,就像我试图告诉接口有一个默认值我得到错误:

TS2174: Default arguments are not allowed in an overload parameter.

如果我从界面中省略默认值并像这样调用它:

var myObject = new SomeImplementation();
myObject.SomeMethod("foo", "bar");
Run Code Online (Sandbox Code Playgroud)

它抱怨参数与任何覆盖都不匹配.那么是否有一种方法可以为参数提供默认值并从接口继承,我不介意接口是否必须将值作为默认值,因为它始终是一个可选参数.

arguments interface default-value typescript

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

如何在react-select中设置默认值

我有一个使用react-select的问题.我使用redux形式,我已经使我的react-select组件与redux形式兼容.这是代码:

const MySelect = props => (
    <Select
        {...props}
        value={props.input.value}
        onChange={value => props.input.onChange(value)}
        onBlur={() => props.input.onBlur(props.input.value)}
        options={props.options}
        placeholder={props.placeholder}
        selectedValue={props.selectedValue}
      />
    );
Run Code Online (Sandbox Code Playgroud)

在这里我如何渲染它:

<div className="select-box__container">
                  <Field
                    id="side"
                    name="side"
                    component={SelectInput}
                    options={sideOptions}
                    clearable={false}
                    placeholder="Select Side"
                    selectedValue={label: 'Any', value: 'Any'}
                  />
                </div>
Run Code Online (Sandbox Code Playgroud)

但问题是,我的下拉列表没有我想要的默认值.我做错了什么?有任何想法吗?

default-value reactjs react-select

40
推荐指数
7
解决办法
11万
查看次数

当ContentControl的内容为null或为空时,在ContentControl中显示默认的DataTemplate?

我认为这是可能的,但显而易见的方法是行不通的.

目前,我这样做:

<ContentControl
    Content="{Binding HurfView.EditedPart}">
    <ContentControl.Resources>
        <Style
            TargetType="ContentControl"
            x:Key="emptytemplate">
            <Style.Triggers>
                <DataTrigger
                    Binding="{Binding RelativeSource={x:Static RelativeSource.Self}, Path=Content}"
                    Value="{x:Null}">
                    <Setter
                        Property="ContentControl.Template">
                        <Setter.Value>
                            <ControlTemplate>
                                <Grid
                                    HorizontalAlignment="Stretch"
                                    VerticalAlignment="Stretch">
                                    <TextBlock>EMPTY!</TextBlock>
                                </Grid>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </ContentControl.Resources>
</ContentControl>
Run Code Online (Sandbox Code Playgroud)

我没有得到任何绑定错误,这编译.但是,它不会产生预期的结果.我也试过了这个显而易见的事情:

<DataTemplate DataType="{x:Null}"><TextBlock>Hurf</TextBlock></DataTemplate>
Run Code Online (Sandbox Code Playgroud)

这不会编译.并且尝试两次设置内容也会失败:

<ContentControl
    Content="{Binding HurfView.EditedPart}">
        <TextBlock>DEFAULT DISPLAY</TextBlock>
</ContentControl>
Run Code Online (Sandbox Code Playgroud)

我可以不编写自定义模板选择器吗?

wpf datatemplate default-value contentcontrol

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

如何设置像'YYYYMM'这样的Postgresql默认值日期戳?

作为标题,我如何设置一个表的列,使其具有当前年份和月份的默认值,格式为"YYYYMM",如今的200905?

postgresql datetime default-value

38
推荐指数
3
解决办法
11万
查看次数

Objective-C结构的默认值以及如何测试

我正在尝试测试是否已经设置了属性.我知道有了我得到的物品:

CGRect ppGoalFrame;
LocalPlaySetup *localPlaySetup;
Run Code Online (Sandbox Code Playgroud)

我可以测试一下

if (localPlaySetup == nil)
Run Code Online (Sandbox Code Playgroud)

但如果我尝试使用== nil或== NULL测试CGRect

if (ppGoalFrame == nil)
Run Code Online (Sandbox Code Playgroud)

我明白了

invalid operands to binary == (have 'CGRect' and 'void *')
Run Code Online (Sandbox Code Playgroud)

那么CGRect"无效",无效,无......?在它设定之前?显然我无法将CGrect与void指针进行比较(我不能使用ppGoalFrame == void); 还有另一种测试方法吗?到目前为止Objective-C很容易理解,但是一旦C出现,我就会有点迷失.

c struct objective-c default-value

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