Организационная схема Highcharts (организационная диаграмма) с React Native - PullRequest
1 голос
/ 30 сентября 2019

Я пытаюсь реализовать организационную схему Highcharts в приложении React Native, но не могу найти идеальное руководство для начала. Я пробовал упаковку Highcharts React Native, но выдает ошибки. Будет очень информативно, если кто-то сможет найти идеальный учебник, совместимый с последними версиями реакции native и expo.

1 Ответ

1 голос
/ 10 октября 2019

Я также сталкивался с ошибками, но мне удалось исправить их в библиотекеact-native-highcharts. Это связано с тем, что библиотека использует webview как компонент из собственного ядра реакции, которое устарело.

npmjs.com руководство по старшим диаграммам

после установки и реализации всего каккак описано в руководстве, установите еще один пакет, выполнив следующую команду

npm install --save react-native-webview

, после этого перейдите в node_modules> Reaction-native-highcharts> Reaction-native-highcharts.js

вздесь, в самом начале, найдите операторы импорта и удалите импорт WebView из «act-native »и добавьте следующую строку после этого.

import WebView from 'react-native-webview';

и теперь перейдите к методу рендеринга, здесь наВ элементе WebView вы найдете реквизит с именем 'onLayout = {this.reRenderWebView}', подобный этому

return (
        <View style={this.props.style}>
            <WebView
                onLayout={this.reRenderWebView}
                style={styles.full}
                source={{ html: concatHTML, baseUrl: 'web/' }}
                javaScriptEnabled={true}
                domStorageEnabled={true}
                scalesPageToFit={true}
                scrollEnabled={false}
                automaticallyAdjustContentInsets={true}
                {...this.props}
            />
        </View>

Измените его на

return (
        <View style={this.props.style}>
            <WebView
                onLayout={this.reRenderWebView.bind(this)}
                style={styles.full}
                source={{ html: concatHTML, baseUrl: 'web/' }}
                javaScriptEnabled={true}
                domStorageEnabled={true}
                scalesPageToFit={true}
                scrollEnabled={false}
                automaticallyAdjustContentInsets={true}
                {...this.props}
            />
        </View>

Теперь снова запустите ваше приложение и посмотрите,по-прежнему ударил любые ошибки. Я надеюсь, что это решит вашу проблему

...