Ответы пользователя по тегу React
  • Как лучше работать с массивом данных?

    vahe_2000
    @vahe_2000
    я тоже столкнулась с этим.мне повезло что я работал с react-mobx.я вам тоже буду советовать использовать mobx. смотрите здесь https://jsfiddle.net/vaheqelyan/u4t83c5L/
    создадим
    @observable treeData = [] в Store
    в этом будет содержаться массив который будем отправлять в базу данных.
    @computed get treeComputed() {
            var obj = {};
            this.treeData.map(function(value, index) {
                if (value.hasOwnProperty("belongs")) {
                    var objWithPath = objectPath.get(obj, value.belongs.split("."));
    
                    objWithPath[`text_${value.id}`] = {
                        text: value.name,
                        child: {},
                        belongs: value.belongs,
                        id: value.id,
                        disabled: false,
                        indx: value.indx,
                        visible: value.visible
                    };
                } else {
                    obj[`text_${value.id}`] = {
                        id: value.id,
                        text: value.name,
                        child: {},
                        mode: "editable",
                        indx: value.indx,
                        disabled: false,
                        visible: value.visible
                    };
                }
            });
            return obj;
        }

    здесь мы будем с генерировать объекты который и будет показано для пользователей, для этого и будем использовать @computed.
    Вычисляемые значения(@computed) — это значения, которые могут быть получены из существующего состояния или других вычисляемых значений.
    ну короче у вас есть массив но он будет выглядеть как объект.весь изменения которые будут происходить в объекте будут изменены в массиве и вы будете отправить массив в базу данных,о потом когда будете вынести данный массив вы будете читать как объект так более удобно будет добавить или удалить,изменить...данные

    например в firebug добавьте объект в массив
    вот наш объект
    2c22cf4cff4e42d29af41d358386209b.gif31bb466a36d94e65a61dad9da6f438e4.png
    а вот и наш массив для БД
    3e06c12b422648db9278980624da36bd.png
    я надеюсь что вы поняли что то
    я только хотел поделиться с вами с моим опытом
    Ответ написан
    1 комментарий
  • Почему не передает событие?

    vahe_2000
    @vahe_2000
    используйте refs

    var Player = React.createClass({
        componentDidMount: function() {
            this.refs.video.addEventListener("ended", this.onEnded, false);
        },
        onEnded: function() {
            alert("ended");
        },
        componentWillUnmount: function() {
            this.refs.video.removeEventListener("ended", this.onEnded, false);
        },
        render: function() {
            return <video ref="video" src={this.props.src} autoPlay={this.props.autoPlay} width={this.props.width} height={this.props.height} controls />;
        }
    });
    var PlayerContainer = React.createClass({
        render: function() {
            return <Player width="50%" height="50%" src="http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4" autoPlay="" />;
        }
    });
    
    ReactDOM.render(<PlayerContainer />, document.body);
    Ответ написан
    5 комментариев
  • State в react - что ты такое?

    vahe_2000
    @vahe_2000
    Объект state описывает внутреннее состояние компонента, он похож на props за тем исключением, что состояние определяется внутри компонента и доступно только из компонента.

    Если props представляет входные данные, которые передаются в компонент извне, то состояние хранит такие объекты, которые создаются в компоненте и полностью зависят от компонента.

    Также в отличие от props значения в state можно изменять.
    Ответ написан
    Комментировать
  • Как писать на React Native в Windows под iOS?

    vahe_2000
    @vahe_2000
    Вам понадобится xcode, который означает, что вам потребуется OS X, а это значит, что вам нужен компьютер Mac или программного обеспечения виртуализации
    Ответ написан
    Комментировать