Nie mogę skonfigurować popychacza i pobrać za pomocą npm w reactjs.Also, czy jest jakiś sposób na użycie cdn w swoim kodzie reakcji?Czy istnieje sposób używania plików cdn z reactjs przy użyciu pakietu internetowego?
Odpowiedz
Wreszcie wpadłem na bardzo prostą odpowiedź
zainstalować npm popychacza-JS-ES6 obietnicę i izomorficzna-fetch i zaimportować go jako
var Pusher=require('pusher-js');
var fetch=require('isomorphic-fetch');
require('es6-promise').polyfill();
Można użyć reagowania-asynchronicznej-script-ładowarka jako komponent wyższego rzędu na to: https://github.com/leozdgao/react-async-script-loader
Wystarczy zainstalować go przez KMP:
npm install --save react-async-script-loader
następnie importować je i przedłużyć swój składnik, który potrzebuje cdn javascripts z scriptLoader podając adresy URL, które chciałbyś dołączyć do swojego komponentu.
import scriptLoader from 'react-async-script-loader';
// Your component code:
class YourComponent extends React.Component {
render() {
return <p>{
this.props.isScriptLoadSucceed ? 'Scripts loaded.' : 'Loading...'
}</p>;
}
}
export default scriptLoader([
'https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js'
])(YourComponent);
W ten sposób pliki są ładowane tylko tam, gdzie naprawdę ich potrzebujesz. Po załadowaniu nie zostaną ponownie dołączone (jeśli zaktualizujesz komponent).
Składnia Decorator (ES7) działa również, jeśli podoba Ci się bardziej niż implementacja HOC, jest to udokumentowane w projektach README.
Moja klasa już rozciąga React.Component.So jak czy mogę rozszerzyć skryptloader w tej samej klasie? Nie sądzę, że obsługuje wielokrotne dziedziczenie –
HOC nie jest dziedziczenie klasy w zwykły sposób, więc można użyć tego, nawet jeśli są rozszerzenie z React.Component. Zobacz tutaj więcej informacji na temat tego wzorca: http://stackoverflow.com/documentation/reactjs/9819/higher-order-components. Zauważ, że nie ma żadnych rozszerzeń w "export default defaultLocker", jest to raczej wywołanie funkcji, które sprawiło, że klasa YourComponent została przekazana. –
jeśli możesz napisać krótki fragment kodu, to byłoby bardzo pomocne. Utknąłem –