Flexbox расширяет всю ширину элемента из массива элементов

Возможно, это поможет вам.

public class CartLine
{
        public int CartLineId { get; set; }
        public int ProductId { get; set; }
        public int Quantity { get; set; }
}

    public class ShoppingCart : List<CartLine>
    {
        public ShoppingCart()
        {
        }

    }

    public class ShoppingCartRepository
    {

        private ShoppingCart ShoppingCart = new ShoppingCart();

        public IEnumerable GetShoppingCart()
        {
            return ShoppingCart.ToList();
        }

        public virtual void AddItem(int productid, int quantity)
        {
            ShoppingCart.Add(new CartLine
            {
                ProductId = productid,
                Quantity = quantity
            });
        }

        public virtual void RemoveItem(int cartlineid)
        {
            ShoppingCart.RemoveAll(l => l.CartLineId == cartlineid);
        }

    }

Я меняю класс, чтобы сделать его общим. Проблема, я думаю, заключается в том, что вы делаете свой общий список ShoppingCart, но вы хотите добавить CartLine.

Надеюсь, это поможет вам.

1
задан lucahuy 20 January 2019 в 06:01
поделиться

2 ответа

Если я правильно понял вашу проблему, она «ломает» ваш код flexbox из-за поля фильтра в файле this.item.map

Как вы определяете разницу между предметом, коробка фильтра и предмет, который должен быть гибким? Не могли бы вы привести наглядный пример того, чего вы пытаетесь достичь?

0
ответ дан mdubus 20 January 2019 в 06:01
поделиться

Поскольку вы указываете, что проблема вызвана тем фактом, что React требует вернуть только один элемент, возможно, вы могли бы заключить эти элементы в <React.Fragment> вместо div. Обратите внимание, что для этого требуется React v16.2 или выше. Таким образом, ваш код будет выглядеть следующим образом:

render() {
    return (
        <div className='view-content'>
            {this.items.map((item, index) => {
                return (
                    <React.Fragment key={index}>
                        <div className='filterbox'>
                            <div>{item.filter}</div>
                        </div>
                        <div className='flex-item'}>
                            <div>{item.flex-item}</div>
                        </div>
                    </React.Fragment>
                )
            })}
        </div>
    );
}

Таким образом, он удовлетворяет требованию иметь только один элемент, возвращаемый в JSX, и в окончательной разметке фрагмент не добавляется как фактический узел DOM. [ 114]

0
ответ дан Piotr Wicijowski 20 January 2019 в 06:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: