Is fbh-firebase-util compatible with aurelia?
How to use it?
fbh-firebase-util via jspm:
jspm install github:djindjic/fbh-firebase-util
Aurelia is just a javascript framework. Aurelia itself won't keep you from using the libraries you love. After installing a library with jspm, just import it and use it. The only trick is knowing what the library exports, but the library should provide you with some documentation.
In all likelihood, you will just need to add this line at the top of your code which uses firebase:
import firebase from 'github:djindjic/fbh-firebase-util'
If you add a dependency to your package.json
"jspm": {
"dependencies": {
"firebase": "github:djindjic/fbh-firebase-util#^0.1.22",
then your import line becomes
import firebase from 'firebase'
If this doesn't immediately work, please review the firebase documentation to see what the module exports. The above assumes it exports default.
Related
I am trying to create an analytics library for my applications. The applications have to go through the framework to send analytics, so Firebase Analytics is a dependency of the pod.
I have created a sample project.
When trying to compile the app, the pod does not compile:
No such module 'Firebase'
If I open the pod framework target build settings and add in the header search path:
${PODS_ROOT}/Firebase/CoreOnly/Sources
The error disappears. Then if I try to use Analytics or Crashlytics, I have the error:
Undefined symbols for architecture x86_64: "OBJC_CLASS$_FIRAnalytics"
It was not happening with the previous version 6.32.2.
How to fix this?
The library's podspec that depends on FirebaseAnalytics should specify static_framework=true.
More detail at https://github.com/firebase/firebase-ios-sdk/issues/7579
I validated the answer from Paul, from Firebase.
To sum up, not to have any issue:
distribute the pod as static (static_framework=true)
replace import Firebase with
import FirebaseCore
import FirebaseAnalytics
import FirebaseCrashlytics // (if required)
I am writing a service worker for my app which, in 'activate' state reads and writes to IndexedDB. For reading or writing in IndexedDB, I use a library called 'idb'(https://unpkg.com/idb?module). Is there ant possible way to import libraries in service workers. Also, the library use ES6 imports and exports, will that be a problem?
To import scripts/libraries in service workers I had to use importScripts() rather than fetch() and that did the trick. Also, the imported library gets added to the ServiceWorkerGlobalScope, meaning I had to use this.<library-name> to access the library.
Also, the ServiceWorkerGlobalScope doesn't have support for ES6 import/export, that's why I needed to build the package with npm build and then use it.
importScripts('index-min.js');
this.idb();
When application load in browser, it gives following warning. So unable to create build for prod (ng build --aot --prod)
It looks like you're using the development build of the Firebase JS SDK.
When deploying Firebase apps to production, it is advisable to only import
the individual SDK components you intend to use.
For the module builds, these are available in the following manner
(replace <PACKAGE> with the name of a component - i.e. auth, database, etc):
CommonJS Modules:
const firebase = require('firebase/app');
require('firebase/<PACKAGE>');
ES Modules:
import firebase from 'firebase/app';
import 'firebase/<PACKAGE>';
I am using following configurations
Angular CLI: 1.5.0
Node: 9.8.0
Angular: 5.1.3
"firebase": "^5.0.4",
"angularfire2": "^5.0.0-rc.10"
Please guide where I get wrong.
There is nothing really wrong, it is more a warning and a best practices tip.
Firebase is composed of different services/modules, e.g. the Real Time Database, Firestore, the Auth service, etc.
In the majority of projects one does not use ALL those services and therefore this warning indicates that instead of importing all the services with one global import it is better to only import the services you really need in your application. In such a way, your build will be optimized: the resulting build file(s) will only contain the Firebase SDK code that you need and will not contain the parts that are not used.
See this documentation item: https://firebase.google.com/docs/web/setup and in particular the part that says:
If you are using a bundler like Browserify or webpack, you can just
require() the components that you use.
Update following your comment:
With the import keyword, you should do as follows:
import messaging from 'firebase/messaging';
You did not share your Angular component code that's why I could not give you specific code. However, I guess, you include Firebase directly like this then it will show following warning.
import * as firebase from 'firebase'; // It will throw warning
import * as firebase from 'firebase/app'; // It will not throw any warning
Then include specific package acccording to your need.
import 'firebase/firestore';
import 'firebase/database';
import 'firebase/auth';
I add following code, it works for me
require("firebase/messaging");
I am new at Swift. I am creating my own framework that will use Firebase for in-app messages.
I tried to install Firebase through Cocoa pods, but it has issues: when I do that for my framework, then for sample project I have to install Firebase again. And then I get the numbers of warnings like this:
Class Firebase is implemented in both /private/var/containers/Bundle/Application/AD85D7EC-2652-4019-94FB-C799D0FBA69B/MyFrameworkExampleApp.app/Frameworks/MyFramework.framework/MyFramework (0x1019a0438) and /var/containers/Bundle/Application/AD85D7EC-2652-4019-94FB-C799D0FBA69B/MyFrameworkExampleApp.app/MyFrameworkExampleApp (0x10107c558). One of the two will be used. Which one is undefined.
my app crashes at runtime due to these warnings
So I don't want to use cocoa pods in Framework but need Firebase in my project.)
.
I follow the steps:
"https://firebase.google.com/docs/ios/setup#frameworks"
I just download the firebase file and import it into my project. after this I try to:
import Firebase
at the top of my swift class but the compiler is giving me an error.
No such module 'Firebase'
I am using Xcode 9. swift 4.
All of the framework files are in
"Targets > FrameworkName > General > Linked Frameworkd and Libraries".
also in the
"Targets > FrameworkName > Build Phases > Link Binary with Libraries".
I also followed this tutorial:
http://www.mokacoding.com/blog/setting-up-firebase-without-cocoapods/
but nothing happened.
Where am I wrong and What should I do?
Try adding following #import to framework's public header file "YourCocoaTouchFrameworkNameSwift.h"
#import <YourCocoaTouchFrameworkName/Firebase.h>
Check this link, if you need more information.
in firebase we have not a .framework file for import firebase. As we know that firebase is a combination of different frameworks, so we were unable to import firebase directly. thats why we
import required framework and dependent framework separately.
Dont try to import whole firebase.
I'm trying to import the core module from firebase but it looks like something is wrong with what I''m doing. Currently I'm importing it as:
import firebase from 'firebase'
With this in my app I do not get the app interface, however, if I do:
import firebase from 'firebase/app'
It does work but I'm missing all the other modules as the database modules, I could by pass it just by adding a couple more of imports but I'd like to import the full app since it's a simpler implementation
Thanks for the help!
Try with:
import firebase from 'firebase/firebase-browser'