我正在搜索是否有一种方法可以在同一行上初始化具有不同值的多个变量,就像在JavaScript中一样.(也许在c#6?)
例如:
var x = "hello",
y = "friend";
Run Code Online (Sandbox Code Playgroud)
**编辑
我知道我可以分配相同的值(在SO上看到其他帖子 - 我不知道这篇文章是如何重复的)我希望它具有不同的值(使用var关键字).正如我从下面的答案中看到的,我看到没有明确声明类型的方法.谢谢你的帮助.
过滤阵列已经在这里被问了很多,但我发现的问题和答案都没有考虑到我需要的两个条件:
1.不要改变对象.
2.使用es6(ecmascript2015)及以上.
3.获取一个包含重写对象和值的新数组.
我实际上有一个答案我的问题的一部分,那就是如何过滤但感觉就像一个黑客而不是一个真正的解决方案,第二部分是如何从第二个数组获得完整的原始数组,但没有变异对象.
这是我的代码,因为你可以看到我{dirty:true}明确地分配了它而不是从它自己的数组中传递对象:
const docPositions = [
{
active : false,
dirty : false,
key : "somekey2"
},
{
active : false,
dirty : false,
key : "somekey1"
},
{
active : false,
dirty : false,
key : "somekey4"
},
{
active : false,
dirty : false,
key : "somekey3"
}
]
const dirtyPositions = [
{
active : false,
dirty : true,
key : "somekey1"
},
{
active : false,
dirty : true,
key …Run Code Online (Sandbox Code Playgroud) 我想知道是否可以添加使用反应日期选择的最大天数。基本上是已经存在的minimumNights属性的倒数。
干杯
我得到一个像
{Path:xxx,
Component:"./xxx/ComPXX"}
Run Code Online (Sandbox Code Playgroud)
从我的API并基于此创建我的应用程序的路由。目前,我正在使用React-Loadable(5.5.0)和React-Router(4.4.0-betax,以避免在严格模式下发出警告)。在这里查看工作示例。
自从React 16.6引入React.lazy以来,我正在尝试迁移解决方案,但是我遇到了错误和困难,但是我尝试这样做。您可以在此处查看已迁移(失败)的代码。
知道为什么这不起作用吗?可能是因为React.Lazy不接受变量吗?
我在 wpf (mvvm) 项目上有一个数据网格。数据网格排序将添加到集合中的最后一项显示为第一行。我想为第一行着色(以突出显示添加到集合中的新项目)我已经看到了一些关于这种方式的类似问题,但没有一个与我正在寻找的真正相关。我曾尝试使用 IValueConverter,但它似乎不是我的正确路径,因为我需要获取第一行的唯一标识符并更改所有其余行以将其归类为“第一行”。
我的集合中项目的对象模型如下所示:
public class Messages
{
public string Date {get; set;}
public string Sender{get; set;}
public string Content{get; set;}
}
Run Code Online (Sandbox Code Playgroud)
*编辑忘记添加转换器代码......当然这会将所有行着色为红色,因为我不知道当集合更改时如何影响其他行。
class DateToColorConverter : IValueConverter
{
object IValueConverter.Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (Convert.ToDateTime(value) >= DateTime.Now.AddMinutes(-1))
{
return "Red";
}
else
return "Yellow";
}
object IValueConverter.ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
}
Run Code Online (Sandbox Code Playgroud) 我id将对象作为action.payloadreducer传递给修改对象.
减速器:
const initialState = {
posts: [
{id:1, name:'post1', number:11},
{id:2, name:'post2', number:22},
{id:3, name:'post3', number:33}
]
}
export default function newData (state = initialState, action) {
switch (action.type) {
case "updateNumber": {
// find object to update
const index = state.findIndex(({ id }) => id == action.payload);
if (index > -1 ) {
const toIncrement = state[index];
const number = toIncrement.number++;
// create new object with existing data and newly incremented number
const updatedData …Run Code Online (Sandbox Code Playgroud) 我有这种形式的状态树:
const initialState = {
total: 0,
discount: 0,
typeDiscount: 0,
products: data
};
Run Code Online (Sandbox Code Playgroud)
在哪个产品字段是一个数组,数组是这样的:
[{
"id":9090,
"name":"Item1",
"price":200,
"discount":10,
"type":"fiction",
"quantity": 1,
"img_url":"https://store.lexisnexis.com.au/__data/media/catalog/thumb//placeholder.jpg"
},
{
"id":9091,
"name":"Item2",
"price":250,
"discount":15,
"type":"literature",
"quantity": 1,
"img_url":"https://store.lexisnexis.com.au/__data/media/catalog/thumb//placeholder.jpg"
}]
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试更改该阵列中的数量,我是Redux的新手所以请指导我如何做到这一点?
这是我的减速机:
case types.ADD_ITEM_CART:
let product_add = state.products
for (let i = 0; i < product_add.length; i++) {
if (product_add[i].id === action.id) {
product_add[i].quantity = product_add[i].quantity + 1
break
}
}
return dotProp.set(state, `products`, product_add);
Run Code Online (Sandbox Code Playgroud) 我正在使用react-elastic-carousel,我正在尝试渲染我自己的自定义箭头。
这是我的代码(取自文档中的示例)
function App() {
return (
<div>
<Carousel
renderArrow={({ type, onClick }) => {
const pointer = type === consts.PREV ? '' : ''
return <button onClick={onClick}>{pointer}</button>
}}
>
<Item>1</Item>
<Item>2</Item>
<Item>3</Item>
<Item>4</Item>
<Item>5</Item>
<Item>6</Item>
</Carousel>
</div>
);
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
Run Code Online (Sandbox Code Playgroud)
我收到错误:
常量未定义
我这里有两个问题:
1. 这个 consts 变量是什么以及如何定义它?
2. 这种代码风格是什么,为什么我们需要传递一个函数而不仅仅是一个组件renderArrow?
我正在构建一个简单的计时器应用程序。当用户点击播放时,该handlePlayPause函数被调用。我创建了一个isRunning布尔值来检查计时器是否已经在运行。如果不是,计时器将启动(第一部分起作用),如果是,pauseTimer则调用该函数。最后一个函数切换isRunning 回 false 并且应该清除间隔。但是,间隔不会被清除。你能看出我做错了什么吗?
感谢您的帮助!
export default function App() {
const [sessionLength, setSessionLength] = useState(25)
const [breakLength, setBreakLength] = useState(5)
const [timeLeft, setTimeLeft] = useState(25 * 60 * 1000)
const [isRunning, setIsRunning] = useState(false)
let intervalId = null
let handlePlayPause = () => {
if (!isRunning) {
setTimeLeft(sessionLength * 60 * 1000)
playTimer()
} else if (isRunning) {
pauseTimer()
}
}
let playTimer = () => {
setIsRunning(true)
intervalId = setInterval(() => { …Run Code Online (Sandbox Code Playgroud)我需要按薪水排序后的更新状态
state = {
workers: [
{name: 'Bob', surname: 'Meljanski', salary: 5140},
{name: 'Michel', surname: 'Hensson', salary: 5420},
{name: 'Jane', surname: 'Mitchel', salary: 2054}
}
startSort = () => {
const arr = this.state.workers.slice();
arr[2].name = 'Mike';
var kk = [...arr].sort((a,b) => (a.salary>b.salary)*2-1);
this.setState(kk);
console.log(kk);
}
Run Code Online (Sandbox Code Playgroud)
结果。状态呈现而不进行排序。我该怎么做?对不起我的英语不好
javascript ×8
reactjs ×7
c# ×2
redux ×2
arrays ×1
carousel ×1
datagrid ×1
ecmascript-6 ×1
immutability ×1
mvvm ×1
react-async ×1
react-dates ×1
react-hooks ×1
react-native ×1
react-redux ×1
variables ×1
wpf ×1
xaml ×1