我有一個簡單的Angular應用程序,我試圖讓它脫機 - 可以在服務人員的幫助下完成。我按照有關如何設置服務工作者本教程:Angular 2+使用sw-precache和github項目頁面
https://coryrylan.com/blog/fast-offline-angular-apps-with-service-workers
的SW和應用程序本身工作正常,當我在我自己的開發機器上運行它,但我想在Github上部署該項目頁面:https://zyxon.github.io/AngTodo/
已經上傳的文件夾dist
(因爲我在我的開發服務器上做相同)的服務人員無法註冊的內容,由於得到404的上assets
文件夾的內容。它在/assets/...
中查找文件。
我最好的猜測是它可以在我的開發服務器上工作,因爲應用程序託管在web服務器ROOT中,但是在Github頁面的情況下,託管在.../AngTodo目錄中。
所以我的問題如下:如何指定sw-precache輸出帶附加前綴的SW(在我的情況下爲/AngTodo/assets/...
)?
我sw-precache-config.js
如下:
module.exports = {
navigateFallback: '/index.html',
stripPrefix: 'dist',
root: 'dist/',
staticFileGlobs: [
'dist/index.html',
'dist/**.js',
'dist/**.css',
'dist/assets/**.js',
'dist/assets/**.css',
'dist/assets/bootstrap/css/**.css',
'dist/assets/bootstrap/js/**.js',
'dist/assets/font-awesome/css/**.css',
'dist/assets/font-awesome/fonts/*.eot',
'dist/assets/font-awesome/fonts/*.svg',
'dist/assets/font-awesome/fonts/*.ttf*',
'dist/assets/font-awesome/fonts/*.woff*',
'dist/assets/font-awesome/fonts/*.woff2*',
'dist/assets/font-awesome/fonts/*.otf',
'dist/assets/font-awesome/fonts/*.*',
'dist/assets/font-awesome/fonts/*.eot',
'dist/assets/font-awesome/less/*.less',
'dist/assets/font-awesome/scss/*.scss',
'dist/assets/img/*.png',
'dist/assets/jquery/*.js',
'dist/assets/popper/*.js'
]
};
這實際上是非常有用的。謝謝! –