-
Notifications
You must be signed in to change notification settings - Fork 23
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Publishing docs for version: 12.0.0-beta.0
- Loading branch information
1 parent
4738824
commit 19ecc4f
Showing
1,782 changed files
with
451,966 additions
and
0 deletions.
There are no files selected for viewing
164 changes: 164 additions & 0 deletions
164
api-docs/stark-core/12.0.0-beta.0/additional-documentation/default-error-handling.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,164 @@ | ||
<!doctype html> | ||
<html class="no-js" lang=""> | ||
<head> | ||
<meta charset="utf-8"> | ||
<meta http-equiv="x-ua-compatible" content="ie=edge"> | ||
<title>@nationalbankbelgium/stark-core documentation</title> | ||
<meta name="description" content=""> | ||
<meta name="viewport" content="width=device-width, initial-scale=1"> | ||
|
||
<link rel="icon" type="image/x-icon" href="../images/favicon.ico"> | ||
<link rel="stylesheet" href="../styles/style.css"> | ||
<link rel="stylesheet" href="../styles/dark.css"> | ||
<link rel="stylesheet" href="../styles/material.css"> | ||
</head> | ||
<body> | ||
|
||
<div class="navbar navbar-default navbar-fixed-top visible-xs"> | ||
<a href="../" class="navbar-brand">@nationalbankbelgium/stark-core documentation</a> | ||
<button type="button" class="btn btn-default btn-menu ion-ios-menu" id="btn-menu"></button> | ||
</div> | ||
|
||
<div class="xs-menu menu" id="mobile-menu"> | ||
<div id="book-search-input" role="search"><input type="text" placeholder="Type to search"></div> <compodoc-menu></compodoc-menu> | ||
</div> | ||
|
||
<div class="container-fluid main"> | ||
<div class="row main"> | ||
<div class="hidden-xs menu"> | ||
<compodoc-menu mode="normal"></compodoc-menu> | ||
</div> | ||
<!-- START CONTENT --> | ||
<div class="content additional-page"> | ||
<div class="content-data"> | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<h1 id="stark-default-error-handling">Stark Default Error Handling</h1> | ||
<p>Stark provides its own error handler, StarkErrorHandler, that overrides <a href="https://angular.io/api/core/ErrorHandler">Angular's default ErrorHandler</a>.</p> | ||
<p>This handler will dispatch a StarkUnhandledError action to the application Store which you can treat as you want.</p> | ||
<h2 id="starkerrorhandlingmodule">StarkErrorHandlingModule</h2> | ||
<p>If you want to use this handler, you simply have to import StarkErrorHandlingModule from stark-core in your <code>app.module.ts</code> file.</p> | ||
<div><pre class="line-numbers"><code class="language-typescript">import {StarkErrorHandlingModule} from "@nationalbankbelgium/stark-core"; | ||
|
||
@NgModule({ | ||
bootstrap: ... | ||
declarations: ... | ||
imports: [ | ||
StarkErrorHandlingModule.forRoot(), | ||
... | ||
] | ||
})</code></pre></div><h2 id="effects-definition">Effects definition</h2> | ||
<p>To define what to do when an error happens, you can simply create a new effects file, like in the following example:</p> | ||
<div><pre class="line-numbers"><code class="language-typescript">... | ||
import {StarkErrorHandlingActionTypes, StarkUnhandledError} from "@nationalbankbelgium/stark-core"; | ||
|
||
/** | ||
* This class is used to determine what to do with an error | ||
*/ | ||
@Injectable() | ||
export class StarkErrorHandlingEffects { | ||
|
||
public constructor( | ||
private actions$: Actions | ||
) {} | ||
|
||
@Effect() | ||
public doSomething(): Observable<void> { | ||
return this.actions$.pipe( | ||
ofType<StarkUnhandledError>(StarkErrorHandlingActionTypes.UNHANDLED_ERROR), | ||
map((action: StarkUnhandledError) => { | ||
//DO SOMETHING | ||
}) | ||
); | ||
} | ||
}</code></pre></div><p>If you do create that file, don't forget to import it in your <code>app.module.ts</code> file:</p> | ||
<div><pre class="line-numbers"><code class="language-typescript">... | ||
import { StarkErrorHandlingEffects } from "./shared/effects/stark-error-handler.effects"; | ||
|
||
@NgModule({ | ||
bootstrap: ... | ||
declarations: ... | ||
imports: [ | ||
... | ||
EffectsModule.forRoot([StarkErrorHandlingEffects]), | ||
... | ||
] | ||
})</code></pre></div> | ||
</div><div class="search-results"> | ||
<div class="has-results"> | ||
<h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span class='search-query'></span>"</h1> | ||
<ul class="search-results-list"></ul> | ||
</div> | ||
<div class="no-results"> | ||
<h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1> | ||
</div> | ||
</div> | ||
</div> | ||
<!-- END CONTENT --> | ||
</div> | ||
</div> | ||
|
||
<label class="dark-mode-switch"> | ||
<input type="checkbox"> | ||
<span class="slider"> | ||
<svg class="slider-icon" viewBox="0 0 24 24" fill="none" height="20" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" width="20" xmlns="http://www.w3.org/2000/svg"> | ||
<path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"></path> | ||
</svg> | ||
</span> | ||
</label> | ||
|
||
<script> | ||
var COMPODOC_CURRENT_PAGE_DEPTH = 1; | ||
var COMPODOC_CURRENT_PAGE_CONTEXT = 'additional-page'; | ||
var COMPODOC_CURRENT_PAGE_URL = 'default-error-handling.html'; | ||
var MAX_SEARCH_RESULTS = 15; | ||
</script> | ||
|
||
<script src="../js/libs/custom-elements.min.js"></script> | ||
<script src="../js/libs/lit-html.js"></script> | ||
|
||
<script src="../js/menu-wc.js" defer></script> | ||
<script nomodule src="../js/menu-wc_es5.js" defer></script> | ||
|
||
<script src="../js/libs/bootstrap-native.js"></script> | ||
|
||
<script src="../js/libs/es6-shim.min.js"></script> | ||
<script src="../js/libs/EventDispatcher.js"></script> | ||
<script src="../js/libs/promise.min.js"></script> | ||
<script src="../js/libs/zepto.min.js"></script> | ||
|
||
<script src="../js/compodoc.js"></script> | ||
|
||
<script src="../js/tabs.js"></script> | ||
<script src="../js/menu.js"></script> | ||
<script src="../js/libs/clipboard.min.js"></script> | ||
<script src="../js/libs/prism.js"></script> | ||
<script src="../js/sourceCode.js"></script> | ||
<script src="../js/search/search.js"></script> | ||
<script src="../js/search/lunr.min.js"></script> | ||
<script src="../js/search/search-lunr.js"></script> | ||
<script src="../js/search/search_index.js"></script> | ||
<script src="../js/lazy-load-graphs.js"></script> | ||
|
||
|
||
</body> | ||
</html> |
Oops, something went wrong.