Javascript 有没有一件事是这样的;打包web应用程序;?
假设我有一个HTML/JS应用程序,它位于一个网站上,运行时没有任何服务器端组件(当然除了web服务器)。因此,它基本上只是一堆Javascript 有没有一件事是这样的;打包web应用程序;?,javascript,browser,packaging,Javascript,Browser,Packaging,假设我有一个HTML/JS应用程序,它位于一个网站上,运行时没有任何服务器端组件(当然除了web服务器)。因此,它基本上只是一堆.html、.css和.js文件(以及一些其他文件,如图像或SQLite数据库) 有一天,一个用户来问我是否可以制作一个离线版本,这样他们就可以在离线时访问应用程序。 我的第一反应是将应用程序中的所有文件提供给他们,放在.zip文件或其他文件中,但这并不是很好:对于普通用户来说,这些文件和代码并不“清晰”,而且这些文件和代码很明显(如果用户无意中编辑或删除它们,这可能是
.html
、.css
和.js
文件(以及一些其他文件,如图像或SQLite数据库)
有一天,一个用户来问我是否可以制作一个离线版本,这样他们就可以在离线时访问应用程序。
我的第一反应是将应用程序中的所有文件提供给他们,放在.zip
文件或其他文件中,但这并不是很好:对于普通用户来说,这些文件和代码并不“清晰”,而且这些文件和代码很明显(如果用户无意中编辑或删除它们,这可能是“危险的”)
所以我想知道:是否有一种格式可以让我将应用程序的文件存储在打包文件中?
该文件类似于.zip
文件,但当您单击该文件时,它会打开内部的/index.html
(或类似文件),而不是打开归档文件
因此,对于用户来说,这类似于打开一个.exe
或一个.html
文件,但这仍然不是一个本机应用程序,因为它仍然是一个浏览器应用程序
鉴于我知道:
- 阿帕奇·科尔多瓦;但大多数时候,我只使用浏览器功能,不需要使用高级的本机功能李>
- UWP和PWA,但我不知道它是否正是我想要的(我认为它是网站和移动应用的混合体,但我肯定错了)李>
- OpenWebApp(Mozilla的一个标准),但根据我所读到的内容,它似乎已被弃用,不再使用。另外,我并不真的期待“认证”我的应用程序。。。我只想打包一些文件
另一个解决方案是将所有内容都内联到一个html文件中。您应该能够在Google Chrome中打开您的.html页面,然后它就可以开箱即用了?如果它只是.html、.css和.js,并且所有文件都可以在archiveI中使用,我不确定是否有标准的跨浏览器格式,但您可以将该应用程序作为Chrome的Chrome Web应用程序提供给Chrome,例如。@sjahan Chrome应用程序目前已被弃用,从现在起,它们仅在Chrome操作系统中受支持@AK47是的,当然。但这就是我这篇文章的重点:我想知道是否有什么东西,我们不需要一堆html/css/js文件,而是将它们全部封装在一个文件中,这会让最终用户更容易使用。事实上,我忘了说,但我在一些应用程序中使用了Electron(我在我的文章中将其与Cordova混淆了…)。问题是Electron提供了一个完整的引擎并添加了它的API,有些应用程序并不需要这些API,因为它们最初不是本地的。我真正搜索的东西是在用户的常规浏览器中打开的东西,因此它不会占用Electron所需的所有空间(另外,Electron给了我一些问题,例如我无法使用
prompt()
)