小编mar*_*n36的帖子

使用数组作为string.Format()的参数

当尝试使用数组作为string.Format()方法的参数时,我收到以下错误:

FormatException:Index(从零开始)必须大于或等于零且小于参数列表的大小.

代码如下:

place = new int[] { 1, 2, 3, 4};
infoText.text = string.Format("Player1: {0} \n Player2: {1} \n Player3: {2} \n Player4: {3}", place);
Run Code Online (Sandbox Code Playgroud)

Array包含四个值,其中的参数String.Format()也相同.

是什么导致这个错误?

(这infoText.text只是一个常规的String对象)

.net c# arrays string string-formatting

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

在组件上设置必需的道具

假设我创建了一个这样的自定义组件:

const MyComponent = (props) => (
  <div
    className={props.name}
    id={props.id}>
    {props.children}
  </div>
)
Run Code Online (Sandbox Code Playgroud)

需要确保props包含变量,name并且id因为否则我想要做的就是不起作用(现在我知道这个代码无论如何都会起作用,但假设它不会).

React有没有办法要求将某些道具传递给组件?

也许这是显而易见的事情,但我找不到任何有关它的信息.

javascript reactjs

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

将道具传递给包裹在RouteRoute()函数中的react组件

我正在使用React-Router v4在我的React应用程序中导航。以下是包装在withRouter()函数中的组件,使它能够在单击时更改路线:

const LogoName = withRouter(({history, props}) => (
  <h1
    {...props}
    onClick={() => {history.push('/')}}>
    BandMate
  </h1>
));
Run Code Online (Sandbox Code Playgroud)

如您所见,我将传递props给组件,以便更改组件的类。这里的问题propsundefined<LogoName>组件中。单击另一个组件时,我需要能够更改此组件的类,如下所示:

<LogoName className={this.state.searchOpen ? "hidden" : ""} />
<div id="search-container">
  <SearchIcon
    onClick={this.handleClick}
    className={this.state.searchOpen ? "active" : ""} />
  <SearchBar className={this.state.searchOpen ? "active" : ""}/>
</div>
Run Code Online (Sandbox Code Playgroud)

这是我处理点击的方法。基本上只是设置状态。

constructor(){
  super();
  this.state = {
    searchOpen: false
  }
}

handleClick = () => {
  this.setState( {searchOpen: !this.state.searchOpen} );
}
Run Code Online (Sandbox Code Playgroud)

有没有办法让我传递props给包装在withRouter()函数内部的组件,或者有类似的方法来创建一个可以使用React-Router导航并仍然接收道具的组件?

提前致谢。

javascript reactjs react-router-v4

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

D3js - 从 d3.line() 获取特定域的最大值

我正在制作一个多折线图,并且我已经实现了一个画笔,以便能够放大 x 轴上的特定域。但是,当我放大时,我希望 y 轴缩放,以便它的域从 开始[0, maxY],其中maxY是 x 轴上当前选择的最大 y 值。生成我正在使用的线条d3.line()(它具有 x 和 y 值之间的连接)。这是我目前计算maxY值的方式:

//Find max and min values in data to set the domain of the y-axis
var maxArray = updatedData.map(function(variable){
  //First map the values in the array to a new array
  var valuesArray = variable.values.map(function(d){
    return d.value;
  })
  //Find max value in array
  return Math.max(...valuesArray);
});
var maxY = Math.max(...maxArray);
Run Code Online (Sandbox Code Playgroud)

这是我设置比例并创建的地方d3.line()

var xScale = d3.scaleTime()
  .range([0, chartWidth]); …
Run Code Online (Sandbox Code Playgroud)

javascript d3.js

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

仅在移除悬停时淡出

我有一个div,它应该只在悬停时出现.但是当我加载页面时动画也出现了.我希望隐藏动画div,直到我将鼠标悬停在另一个div上.有没有办法阻止加载页面时动画运行?

这是CSS:

#dim {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background: rgba(200, 200, 200, 0.8);
  z-index:100;
  padding: 5%;

  animation: fadeout 1s;
  animation-fill-mode: forwards;
}

#dim:hover{
  animation: fadein 1s;
  animation-fill-mode: forwards; 
}

/* Animations */

@keyframes fadein {
  from { opacity: 0; }
  to   { opacity: 1; }
}

@keyframes fadeout {
  from { opacity: 1; }
  to   { opacity: 0; }
}
Run Code Online (Sandbox Code Playgroud)

这是一个CodePen:https://codepen.io/Martin36/pen/gWwmZO

html css css3 css-animations

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

XAML WPF 中 {x:Static} 和 {StaticResource} 的区别

是有什么区别{x:Static}{StaticResource}WPF 的 XAML 代码中?

例如:

<StackPanel IsEnabled="{Binding Model.IsReadOnly, Converter={StaticResource BoolInverseConverter}}">
Run Code Online (Sandbox Code Playgroud)

<StackPanel IsEnabled="{Binding Model.IsReadOnly, Converter={x:Static BoolInverseConverter}}">
Run Code Online (Sandbox Code Playgroud)

我什么时候应该使用其中一个?

wpf xaml

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