React build tidak akan berfungsi dengan betul tanpa menambah index.html dalam URL
P粉216203545
P粉216203545 2023-09-01 11:25:58
0
1
485
<p>Saya menggunakan penghalaan cincang untuk aplikasi React JS. Aplikasi ini berjalan dengan baik dalam persekitaran tempatan. </p> <p>Sebagai contoh https://stackoverflow.com/posts/ sepatutnya menjadi URL aplikasi tetapi ia tidak berfungsi dan saya perlu menggunakan https://stackoverflow.com/posts/index.html untuk membuatnya kerja. </p> <p>Selepas digunakan, saya perasan bahawa ia sedang memuat turun fail kosong bernama "<strong>muat turun</strong>" dan bukannya menyediakan fail lalai <strong>index.html</strong> Untuk menjalankan binaan pada pelayan, saya menggunakan seni bina S3 dan CloudFront. </p> <p>Sekarang, saya tidak dapat mengetahui sama ada penghalaan HASH tidak berfungsi atau jika terdapat sesuatu yang tidak kena dengan penggunaan AWS. </p> <p>Coretan kod menggunakan React JS</p> <pre class="brush:php;toolbar:false;">import React daripada 'react'; import ReactDOM daripada 'react-dom'; import { Provider } daripada 'react-redux'; import kedai daripada './redux/store'; import Apl daripada './App'; import reportWebVitals daripada './reportWebVitals'; import { HashRouter } daripada 'react-router-dom/cjs/react-router-dom'; ReactDOM.render( <Kedai pembekal={kedai}> <HashRouter> <Apl /> </HashRouter> </Pembekal> document.getElementById('root') );</pra> <p><strong>Sebahagian daripada kandungan pakej.json</strong></p> <pre class="brush:php;toolbar:false;">{ "nama": "loremipsum", "versi": "0.1.0", "peribadi": benar, "laman utama": "/loremipsum/" }</pre></p>
P粉216203545
P粉216203545

membalas semua(1)
P粉515066518

Adakah ia perlu digunakan pada subdirektori? Jika ya, anda perlu menukar fail package.json 文件的内容,以强制相对于 index.html untuk menyediakan sumber.

{
  "name": "loremipsum",
  "version": "0.1.0",
  "private": true,
  "homepage": ".",
  "scripts": {
    "build": "react-scripts build",
    "build-prd": "PUBLIC_URL=http://www.foo/relativepath react-scripts build"
    // ...
  }
}

Dengan ini kami akan dapat menjadi tuan rumah http://www.foo 中的应用程序移动到 http://www.foo/relativepath 甚至https://www.foo/bar1/bar2/ tanpa membina semula.

Anda juga mesti mengatasi PUBLIC_URL untuk memasukkan domain dan subdirektori tempat anda ingin mengehos fail anda

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan