使用React Native for Android从捆绑包加载JS/CSS
我见过许多从捆绑包中加载JS/CSS的解决方案,其中包含一个React原生应用程序,目标是iOSlike,而不是Android 我的webview代码如下所示:使用React Native for Android从捆绑包加载JS/CSS,android,react-native,Android,React Native,我见过许多从捆绑包中加载JS/CSS的解决方案,其中包含一个React原生应用程序,目标是iOSlike,而不是Android 我的webview代码如下所示: <WebView source={{html: html, baseUrl: `file:///android_asset/web`}} /> const html = ` <html> <head> <link rel="stylesheet" type="text/css"
<WebView
source={{html: html, baseUrl: `file:///android_asset/web`}}
/>
const html = `
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles.css" />
</head>
<body>
<p class="someText">Foo</p>
</body>
</html>`
app
-> assets
-> web
-> styles.css
我的项目目录如下所示:
<WebView
source={{html: html, baseUrl: `file:///android_asset/web`}}
/>
const html = `
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles.css" />
</head>
<body>
<p class="someText">Foo</p>
</body>
</html>`
app
-> assets
-> web
-> styles.css
如果有人对此有解决方案,那就太棒了。将styles.css放在以下路径中: /android/app/src/main/assets 然后,将
的baseURL设置为以下值:
<WebView source={{html: html, baseUrl: 'file:///android_asset/'}} />
附言:每次更改样式时,您都必须执行
react native run android
。我的代码几乎正常工作,除了
中的href
应该以/web
@NaotoIda作为前缀之外,我认为问题是因为您的基本URL中缺少尾随/
,它应该是'file:///android_asset/web/'. 一旦您解决了这个问题,就不需要在href
中以“/web”作为前缀。