Webpack 如何配置Quasar来传输、服务和构建特定的ES6 JavaScript文件?
问题如下(它来自ServiceWorkers API的一些约束): ServiceWorkers API目前不支持导入ES6(它将在Chrome 80中使用,但在当前的稳定版本79中不支持。这意味着人们需要一年多的时间才能更新手机和浏览器) 我必须导入一些将在ServiceWorker中使用的自定义ES6类。 使用默认配置,Quasar将在运行Webpack 如何配置Quasar来传输、服务和构建特定的ES6 JavaScript文件?,webpack,workbox,quasar-framework,workbox-webpack-plugin,Webpack,Workbox,Quasar Framework,Workbox Webpack Plugin,问题如下(它来自ServiceWorkers API的一些约束): ServiceWorkers API目前不支持导入ES6(它将在Chrome 80中使用,但在当前的稳定版本79中不支持。这意味着人们需要一年多的时间才能更新手机和浏览器) 我必须导入一些将在ServiceWorker中使用的自定义ES6类。 使用默认配置,Quasar将在运行Quasar dev时提供/service worker.js文件,或者在运行Quasar build时生成一个文件。Quasar可能会自动传输您的cus
Quasar dev
时提供/service worker.js
文件,或者在运行Quasar build
时生成一个文件。Quasar可能会自动传输您的custom service worker.js
,但遗憾的是,它没有。下面一段解释了为什么它没有
(更具体地说,我正在构建一个PWA。)Quasar的不好之处在于,出于这个目的,它在内部使用了GoogleChrome/workbox
(workbox的功能对项目来说相当不错,但与大多数Google产品一样,它的支持很差,并且有1-2个大缺点)。见:
因此,UndertheHood Quasar使用了他们的工作盒网页插件
。它由两个名为GenerateSW和InjectManifest的类组成。
它们都不可配置为从ES6自动传输到ES5。
我的解决方案显然是创建另一个NPM\Webpack配置,并使用它来构建这些文件,而不会以任何方式干扰Quasar的配置
不过,后者的主要缺点是,我必须手动构建(在Quasar之外)这些在ServiceWorker中导入的自定义ES6类(在传输之后)。也就是说,它破坏了类星体的自然流动(例如,仅使用qasar-dev
和Quasar-build
),并且这些文件将在很长一段时间内处于活跃开发中(因此它将极大地阻碍开发)
我发现很难找到重新配置的起点。配置网页包相当复杂,我没有太多的时间来修补它,所以类星体的环境使它更复杂一点
如何让Quasar编译特定的ES6 JavaScript文件,并像它为其app.js
、client entry.js
和import Quasar.js
提供服务那样为它们提供服务?是否有这样一种方法(如果有,它将立即解决我在workbox网页包插件中遇到的问题)
?
对Quasar或网页有什么建议吗?