diff --git a/src/api/dev.ts b/src/api/dev.ts index 712b302..eb2a769 100644 --- a/src/api/dev.ts +++ b/src/api/dev.ts @@ -105,8 +105,15 @@ class Watcher extends EventEmitter { const dev_port = await ports.find(10000); - const routes = create_routes(); - create_main_manifests({ routes, dev_port }); + try { + const routes = create_routes(); + create_main_manifests({ routes, dev_port }); + } catch (err) { + this.emit('fatal', { + message: err.message + }); + return; + } this.dev_server = new DevServer(dev_port); @@ -114,6 +121,15 @@ class Watcher extends EventEmitter { watch_files(locations.routes(), ['add', 'unlink'], () => { const routes = create_routes(); create_main_manifests({ routes, dev_port }); + + try { + const routes = create_routes(); + create_main_manifests({ routes, dev_port }); + } catch (err) { + this.emit('error', { + message: err.message + }); + } }), watch_files(`${locations.app()}/template.html`, ['change'], () => { @@ -272,7 +288,7 @@ class Watcher extends EventEmitter { if (this.closed) return; this.closed = true; - this.dev_server.close(); + if (this.dev_server) this.dev_server.close(); if (this.proc) this.proc.kill(); this.filewatchers.forEach(watcher => {