启用离线功能ionic 3 firestore

时间:2018-05-31 12:35:31

标签: javascript ionic-framework google-cloud-firestore offline

请问有人帮助我让我的离子3应用程序首先脱机。我正在为web,android,ios和windows phone创建单个代码。我需要启用离线功能。 Google文档说要使用以下代码。

但是我不知道在哪里添加波纹管代码,我使用environment.ts文件进行配置,在app.component.ts文件的构造函数中,我包含了波纹管代码。

firebase.firestore().enablePersistence().then(function() {
  // Initialize Cloud Firestore through firebase
  var db = firebase.firestore();
  }).catch(function(err) {
  if (err.code == 'failed-precondition') {
      // Multiple tabs open, persistence can only be enabled
      // in one tab at a a time.
      // ...
  } else if (err.code == 'unimplemented') {
      // The current browser does not support all of the
      // features required to enable persistence
      // ...
  }

});

我的第一个疑问是,我应该在哪里粘贴此代码,我是否需要添加更多代码才能启用离线持久性,或者这就足够了吗?

第二个是,我是否需要针对不同的平台采用不同的方法,比如对于android,需要遵循firestore文档中的android教程和web不同。或者启用web将自动适用于其他平台,如ios,android和web?

另外,当我在app.component.ts的构造函数中使用上面的代码时,我收到了波纹管错误

WEBPACK_IMPORTED_MODULE_5_firebase___default.a.firestore is not a function

Stack is:

TypeError:__ WWEPACK_IMPORTED_MODULE_5_firebase ___ default.a.firestore不是函数        在新的MyApp(http://localhost:8100/build/main.js:8712:58)     createClass enter code here上的file.xml <?xml version="1.0" encoding="utf-8" ?> <Fax> <FaxID>1137</FaxID> <Owner>MUMBAI</Owner> <IsReceived>True</IsReceived> <FileName>In201804231733471833E6478.tif</FileName> <CreateTime>2018-04-23 17:33:54</CreateTime> <Pages>2</Pages> <Status>DoneOK</Status> <ToFaxNumber></ToFaxNumber> <ToCompanyName></ToCompanyName> <ToFaxNumber></ToFaxNumber> <ToName></ToName> <FromName>Test Email & Transaction from Test Branch</FromName> <FromCompanyName></FromCompanyName> <FromFaxNumber>-6194</FromFaxNumber> <SendJobID>0</SendJobID> <Matter>23-Apr-18 17:33</Matter> <BillingCode>emailid@example.com</BillingCode> <CustomCode1>0000482</CustomCode1> <CustomCode2>Apr 23 2018 5:33PM</CustomCode2> <Subject></Subject> <FromFaxNumber>-6194</FromFaxNumber> <CallerID>-6194</CallerID> </Fax>     在createDirectiveInstance(http://localhost:8100/build/vendor.js:12859:20)     在createViewNodes(http://localhost:8100/build/vendor.js:12700:37)     在createRootView(http://localhost:8100/build/vendor.js:14158:53)     at callWithDebugContext(http://localhost:8100/build/vendor.js:14047:5)     在Object.debugCreateRootView [as createRootView]

由于

0 个答案:

没有答案