Мне нужно загружать JS динамически (зависит от предпочтений пользователя, поэтому не может жестко запрограммировать все в index.html
), но есть проблема с этим в моем приложении.
Сценарий 1 работает как чудо:
index.html
<html>
<head>
</head>
<body>
<h1>Highcharts webview demo</h1>
<div id="container" style="width:100%; height:500px;"></div>
<script type="text/javascript" src="library.js"></script>
<script>
library works
</script>
</body>
</html>
app
const webapp2 = require('../web/index.html')
render() {
return <View>
<WebView
source={webapp2}
originWhitelist={'["*"]'}
javaScriptEnabled={true}
domStorageEnabled={true}
scalesPageToFit={true}
scrollEnabled={false}
/>
</View>
}
Но когда я пытаюсь сделать это с помощью html
в источнике у меня отсутствует библиотека JS.
Сценарий 2 - не работает
app
render() {
// Create container for the chart
return <View style={styles.container}>
<WebView
source={{html:`<html><head><script type="text/javascript" src="library.js"></script></head><body><div id="container" style="width:100%; height:500px;"></div><script>Library does not exist yet</script></body></html>`, baseUrl: 'web/'}}
originWhitelist={'["*"]'}
javaScriptEnabled={true}
domStorageEnabled={true}
scalesPageToFit={true}
scrollEnabled={false}
/>
</View>
}
Я хотел бы избежать использования внешних библиотек для загрузки файлов js.