Вы можете использовать библиотеку Webix при разработке на React.
С примерами интеграции можно ознакомиться в этом репозитории.Чтобы узнать больше об импорте комплексных виджетов Webix в React, ознакомьтесь также с этим репозиторием.
С помощью Webix компонентов, вы можете значительно расширить возможности и функционал React приложения.
Если вы хотите построить интерфейс приложения на основе компонентов библиотеки, ознакомьтесь сначала с микрофреймворком Webix Jet. Он разработан специально под Webix, и позволяет решать многие задачи более эффективно.
Есть несколько способов интеграции Webix-React:
Склонируйте этот GitHub репозиторий и выполните следующие команды:
npm install
npm run start
Откройте страницу в браузере по адресу http://localhost:3000
. Страница будет обновляться при любых изменениях кода приложения.
Чтобы собрать приложение, выполните команду npm run build
.
Пример кода гибридного приложения выглядит следующим образом:
const ui = {
view:"slider"
};
const value = 123;
const SliderView = () => (
<Webix ui={ui} data={value} />
)
Логика здесь такая:
1. Чтобы создать Webix компонент, используйте тег <Webix>
2. Чтобы настроить компонент, укажите необходимые параметры в объекте ui
.
Related sample: Simple React component with Webix UI
Помимо встроенных компонентов (<Webix>
), вы можете создавать свои. Код кастомного компонента SliderView
будет выглядеть следующим образом.
class SliderView extends Component {
render() {
return (
<div ref="root"></div>
);
}
componentDidMount(){
this.ui = window.webix.ui({
view:"slider"
container:ReactDOM.findDOMNode(this.refs.root)
});
}
componentWillUnmount(){
this.ui.destructor();
this.ui = null;
}
shouldComponentUpdate(){
return false;
}
}
В примере выше показано, как создать гибридный компонент SliderView
на основе Webix компонента slider.
Список методов React:
componentDidMount()
позволяет создавать новые компонентыcomponentWillUnmount()
позволяет удалять ненужные компонентыshouldComponentUpdate()
позволяет обновлять компоненты. В примере ниже показано как отключить обновление компонента.Related sample: Custom Webix-React component
Вы можете использовать виджеты библиотеки вместе с Redux (без дополнительной кастомизации).
Если вы кастомизируете гибридный компонент, убедитесь, что его метод shouldComponentUpdate()
возвращает true
, а метод componentWillUpdate()
мутирует состояние Webix виджета.
componentWillUpdate(props){
if (props.data)
this.setWebixData(props.data);
if (props.select)
this.select(props.select);
},
shouldComponentUpdate(){
return true;
}
Related sample: Using Webix with Redux
Наверх