2021年3月3日
  • 教程
  • 角形
  • 电容
  • 进步Web应用
  • PWA系统

betway东盟体育app启动、构建并部署您的第一电容PWA

西蒙葛林

betway东盟体育appSimonGrim客座文章,Ionic开发者专家兼教育家betway东盟体育app宜家学院.赛门还创建betway东盟体育app实用单调betway东盟体育app书籍指南 构建现实世界单调应用 与电容器和Firebase

betway东盟体育app在此教程中,我们将搭建简单电容PWA综合功能捕捉图像并分享当前位置使用电容插件

最后,我们将把PWA寄存外部世界网状化开始全程托管PWA

betway东盟体育appionesapp搭建

betway东盟体育app启动时简单使用IonicCLI创建空新项目并带角集成和电容直接启动

betway东盟体育app//按需安装ioniccli//启动空新ionica启动ioncPwa

betway东盟体育app将创建新ione应用程序并配有所有Capacitor配置在此教程中,我们无法搭建本地应用软件,但你可以轻而易举搭建iOS和Android应用从代码库使用apacitor端并

容积3.0教程使用, 查查你内部依存性sack.jsonFor电容/核心电容/cli并安装最新版本像此 :

m安装@电容/cli@next

写Capicator3时仍在贝塔中,

betway东盟体育app令您的ioneappPWA备战

agle应用PWA进程很容易实现,因为agle图解自动改变项目所有必要部分并注入服务工正确位置:

/在全球安装角CLIi-g@agle/cli/

if you now检查更新app/app.module.ts服务工建制作时会注入应用

betway东盟体育appservorkermodule.ss

意思是,我们只需要确认最终正确构建后发布PWA-我们将回溯到此点,因为这对Netlify很重要

添加电容插件

电容插件允许我们使用原生API或据WebAPI实现

表示相同的调用/编码捕捉图像或获取用户地理定位跨设备并触发右功能视当前运行环境而定

微小变化是自Capicator版本3以来所有插件均需单独安装,核心包中不再存在但这不会令过程复杂化 如你所见

带PWA元素摄像头

对 很容易从PWA内访问摄像头 使用Capacitor唯一的问题就是没有像样 webUI捕捉图像,PWA元素旁边摄像插件

betway东盟体育appmi@constor/camera//Overlay摄像头webnpm安装@ionic/pwa-element

实现这些元素,我们需要导入defineCustomElements并称它内我们src/ma类似此 :

{prodmode}从'@agle/core'导入{平台浏览器动态}从'@agorm/platform-browser-{appModule}从'./app/app.moule'导入{环境}从'./envices/envice'导入betway东盟体育app//添加导入{定义Custom元素}if(environment.produce)平台BrowserDynic (.botstrapmodule (appmodule).capt//调用加载器定义CustomE元素

现在我们可以从包中导入所有需要的东西并调用获取hoto捕捉图像并设置结果webPath向局部变量

继续修改home/home.page.tsto:

{构件}从'@agle/core'导入相机ResultType摄像头源component({{{{}选择器:app-home>,blishell:home.page.html>,styells:[bhack.page.scss>,}导类HomePage{myImaage=Nullasync takePicture {cost图像=等待摄像头.getPhoto{{quality:90,允许编辑:真,结果Type:ChomasResultType.Uri,源码:Cames源码.Camera}myimage=image.webPath}}

终于我们需要简单按钮iong-img显示应用内捕获图像,修改home/home.page.htmlto:


         
          
           
            电容式PWA
           
          
         
         
          
           抓取图像
          
          
         

浏览器内通过带入预览已经可以试betway东盟体育appionic服务立即

图像捕捉当然只有在计算机内或附带网络摄像头时有效

地理定位

显示使用电容插件简单多安装两个插件获取当前用户位置并本地分享

/安装地理定位插件npmi

正前方可以直接从两个包导入必备函数getCurrentPosition()并存储该值,以便日后分享它与分享插件

举起手来home/home.page.ts并重加新代码

{构件}从'@agle/core'导入相机ResultType摄像头源{地理定位,位置}从'@电容/地理定位'{share}导出squacor/sharecomponent({{{{{{{{{phome>,blendell:#home.page.html>,styells:[bhack.scss>,})导类HomePage{myImage:字符串=Null位置: 位置=无效构造者/sync攻克/picture/async获取当前定位 {cost坐标 = 等待地理定位.getCortition位置表示坐标betway东盟体育appasync分享 {等待Share.share{{{标题:'来找我',文本 :`这是我当前地址:${this.ods.latitude},${this.position.coords.}}

需要点额外按钮触发新功能并显示结果离子卡.

打开home/home.page.html并重置为 :


         
          
           
            电容式PWA
           
          
         
         
          
           抓取图像
          
          
          
           获取位置
          
          
          
           
            
             Lat:++s位置.coords.latitude
            
            
             Lng:##位置.coords.
            
            
             分享式
            
           
          
         

使用这两个功能,你可能会惹上点麻烦,因为:

  • 最近浏览器版本支持Web共享API
  • spari不捕捉无安全 URLs上的位置

意思是,我们真的需要运行PWA 快速实机前先快速推荐 测试本地PWA

测试电容PWA

开发应用时 服务工不注入 除非你制作意指运行标准betway东盟体育appionic服务命令尚不全PWA

if you want测试PWA本地功能网站服务器打包中输入程序

安装后,只需创建制作构建并运行本地服务器,如:

betway东盟体育appionic构建-prod网站服务器

并不会改变前文提到的浏览器版本或安全问题, 但这是你需要知道的东西 关于建设测试你的PWA未来反正

外人仍然无法访问本地宿主右转?向世界释放武士PWA

部署电容PWA

if you got your own服务器,简单拷贝网站文件夹创建a并上传

自大部份时间不是这样, 我们可以回归简单静态托管服务像网状化取而代之

Netlify最终需要构建应用,我们需要为脚本对象添加新脚本sack.json即刻:

建设:程序化 ng构建-程序化

这使得更容易自动运行制作

眼下,我们需要向前Github比特桶创建存储器后我们可以连接Netlify

Github例子使用并创建新仓库,没有任何文件

betway东盟体育app现在我们需要上传文件到Github, 自Ioni启动本地项目Git存储器后, 我们只需要添加并承诺代码

并按Github/Bitbucket指令连接新仓库,设置远程并推译代码

git添加.gitde-am'Istaldection.'git分支-Mmaject#从您的仓库复制git远程添加源

代码存库内,现在我们可以连接到Netlify

内存点击新建网站Git启动向导添加您的项目需要授权Netlify访问Github(Bitbucket)账号并选择前创建项目

重要部分是现在正确配置下一步构建

  • 构建命令:npm运行构建:prod
  • 发布目录:www

基于此信息 Netlify现在可以提取代码 运行生产构建使用附加脚本打包json并主机输出网站文件夹服务电容PWA

部署网站后,你可以看到日志并最后获取URL部署上头例子PWA教程.

想要正确测试时,加入主屏幕并启动

摄像头和地理定位插件自动请求许可,你也可以同时使用本地应用中的同一种代码

结论

betway东盟体育appCapacitor很容易访问PWA或原创ap内本地设备功能, 通过添加静态网站托管程序组合获取简单可靠的工作流托管ionicPWA

替代角形框架,你也可以使用任何其他框架(或完全不使用)并用电容框架,因为它正快速成为任何人选择框架的首选框架,谁想搭建网络应用原创使用iOS、Android和Web运行

betway东盟体育appiccactitor多学60+视频课程库、模板支持社区betway东盟体育app加入爱琴学院betway东盟体育app并获取一吨学习素养 提升你的爱音开发技巧

并不要忘记订阅我的YouTube频道betway东盟体育app新异音教程 每周来


西蒙葛林


Baidu