@tbergeron wrote:
Hi! I've been using Events for a while but in the past week I started to get this critical error in the browser console when using them. As soon as I .publish() a new event I get these errors:
Runtime Error Uncaught (in promise): TypeError: Cannot set property 'events' of undefined TypeError: Cannot set property 'events' of undefined at MyApp (http://localhost:8100/build/main.js:1283:21) at AppModuleInjector.get (ng:///AppModule/module.ngfactory.js:266:71) at AppModuleInjector.getInternal (ng:///AppModule/module.ngfactory.js:432:54) at AppModuleInjector.NgModuleInjector.get (http://localhost:8100/build/vendor.js:4084:44) at resolveDep (http://localhost:8100/build/vendor.js:11546:45) at createClass (http://localhost:8100/build/vendor.js:11405:147) at _createProviderInstance (http://localhost:8100/build/vendor.js:11369:26) at Object.resolveDep (http://localhost:8100/build/vendor.js:11526:53) at Injector_.get (http://localhost:8100/build/vendor.js:10850:25) at ReflectiveInjector_._getByKeyDefault (http://localhost:8100/build/vendor.js:3313:24) Stack Error: Uncaught (in promise): TypeError: Cannot set property 'events' of undefined TypeError: Cannot set property 'events' of undefined at MyApp (http://localhost:8100/build/main.js:1283:21) at AppModuleInjector.get (ng:///AppModule/module.ngfactory.js:266:71) at AppModuleInjector.getInternal (ng:///AppModule/module.ngfactory.js:432:54) at AppModuleInjector.NgModuleInjector.get (http://localhost:8100/build/vendor.js:4084:44) at resolveDep (http://localhost:8100/build/vendor.js:11546:45) at createClass (http://localhost:8100/build/vendor.js:11405:147) at _createProviderInstance (http://localhost:8100/build/vendor.js:11369:26) at Object.resolveDep (http://localhost:8100/build/vendor.js:11526:53) at Injector_.get (http://localhost:8100/build/vendor.js:10850:25) at ReflectiveInjector_._getByKeyDefault (http://localhost:8100/build/vendor.js:3313:24) at c (http://localhost:8100/build/polyfills.js:3:13190) at Object.reject (http://localhost:8100/build/polyfills.js:3:12546) at NavControllerBase._fireError (http://localhost:8100/build/vendor.js:46340:16) at NavControllerBase._failed (http://localhost:8100/build/vendor.js:46328:14) at http://localhost:8100/build/vendor.js:46383:59 at t.invoke (http://localhost:8100/build/polyfills.js:3:8971) at Object.onInvoke (http://localhost:8100/build/vendor.js:4656:37) at t.invoke (http://localhost:8100/build/polyfills.js:3:8911) at r.run (http://localhost:8100/build/polyfills.js:3:4140) at http://localhost:8100/build/polyfills.js:3:13731 Ionic Framework: 3.5.0 Ionic App Scripts: 2.0.1 Angular Core: 4.1.3 Angular Compiler CLI: 4.1.3 Node: 8.1.3 OS Platform: Windows 10 Navigator Platform: Win32 User Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1Here's some code of how I use it:
import { Component } from '@angular/core'; import { IonicPage, Events } from 'ionic-angular'; import { UserService } from '../../providers/user-service'; @IonicPage() @Component({ selector: 'page-sign-in', templateUrl: 'sign-in.html' }) export class SignInPage { username: any; password: any; constructor( public toastCtrl: ToastController, public events: Events, public userService: UserService ) { } ionViewDidLoad() { console.log('ionViewDidLoad SignInPage'); } submit(event) { if ((this.username) && (this.password)) { this.userService.authenticate(this.username, this.password).subscribe((data: any) => { if (data.token) { // preparing authData this.userService.authData = { userId: data.userId, username: data.username, token: data.token } this.events.publish('user:login'); // TRIGGERS THE ERROR } else { alert('Invalid username and/or password!'); } }); } else { alert('Fill username & password fields first!'); } event.stopPropagation(); } }I don't try to set anything anywhere I'm just publishing an event.
this.eventsisn't even null:It looks like it might be a bug to me but I want to ask here before opening an issue on GitHub. Anyone has an idea of what's going on here?
Thanks!
Posts: 3
Participants: 1