5 lines
178 KiB
JSON

{
"id": "api/platform-browser/TransferState",
"title": "TransferState",
"contents": "\n\n<article>\n <div class=\"breadcrumb-container\">\n <div class=\"breadcrumb\">\n <script type=\"application/ld+json\">\n {\n \"@context\": \"http://schema.org\",\n \"@type\": \"BreadcrumbList\",\n \"itemListElement\": [\n { \"@type\": \"ListItem\", \"position\": 1, \"item\": { \"@id\": \"https://angular.io//api\", \"name\": \"API\" } },\n { \"@type\": \"ListItem\", \"position\": 2, \"item\": { \"@id\": \"https://angular.io/api/platform-browser\", \"name\": \"@angular/platform-browser\" } },\n { \"@type\": \"ListItem\", \"position\": 3, \"item\": { \"@id\": \"https://angular.io/api/platform-browser/TransferState\", \"name\": \"TransferState\" } }\n ]\n }\n </script>\n <a href=\"/api\">API</a> > <a href=\"api/platform-browser\">@angular/platform-browser</a>\n </div>\n <div class=\"github-links\">\n <a href=\"https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L67-L144\" aria-label=\"Suggest Edits\" title=\"Suggest Edits\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">mode_edit</i></a>\n <a href=\"https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L67-L144\" aria-label=\"View Source\" title=\"View Source\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">code</i></a>\n</div>\n </div>\n \n <header class=\"api-header\">\n <h1 id=\"transferstate\">TransferState<a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#transferstate\"><i class=\"material-icons\">link</i></a></h1>\n \n <label class=\"api-type-label class\">class</label>\n \n \n \n </header>\n \n <aio-toc class=\"embedded\"></aio-toc>\n\n <div class=\"api-body\">\n \n <section class=\"short-description\">\n <p>A key value store that is transferred from the application on the server side to the application\non the client side.</p>\n\n <p><a href=\"api/platform-browser/TransferState#description\">See more...</a></p>\n </section>\n \n \n \n <section class=\"class-overview\">\n<code-example language=\"ts\" hidecopy=\"true\">\nclass <a href=\"api/platform-browser/TransferState\" class=\"code-anchor\">TransferState</a> {\n <a class=\"code-anchor\" href=\"api/platform-browser/TransferState#get\"><span class=\"member-name\">get</span>&#x3C;T>(key: StateKey&#x3C;T>, defaultValue: T): T</a>\n <a class=\"code-anchor\" href=\"api/platform-browser/TransferState#set\"><span class=\"member-name\">set</span>&#x3C;T>(key: StateKey&#x3C;T>, value: T): void</a>\n <a class=\"code-anchor\" href=\"api/platform-browser/TransferState#remove\"><span class=\"member-name\">remove</span>&#x3C;T>(key: StateKey&#x3C;T>): void</a>\n <a class=\"code-anchor\" href=\"api/platform-browser/TransferState#hasKey\"><span class=\"member-name\">hasKey</span>&#x3C;T>(key: StateKey&#x3C;T>)</a>\n <a class=\"code-anchor\" href=\"api/platform-browser/TransferState#onSerialize\"><span class=\"member-name\">onSerialize</span>&#x3C;T>(key: StateKey&#x3C;T>, callback: () => T): void</a>\n <a class=\"code-anchor\" href=\"api/platform-browser/TransferState#toJson\"><span class=\"member-name\">toJson</span>(): string</a>\n}\n</code-example>\n\n \n \n\n</section>\n\n\n \n\n \n \n<section class=\"description\">\n <h2 id=\"description\">Description<a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#description\"><i class=\"material-icons\">link</i></a></h2>\n <p><code><a href=\"api/platform-browser/TransferState\" class=\"code-anchor\">TransferState</a></code> will be available as an injectable token. To use it import\n<code><a href=\"api/platform-server/ServerTransferStateModule\" class=\"code-anchor\">ServerTransferStateModule</a></code> on the server and <code><a href=\"api/platform-browser/BrowserTransferStateModule\" class=\"code-anchor\">BrowserTransferStateModule</a></code> on the client.</p>\n<p>The values in the store are serialized/deserialized using JSON.stringify/JSON.parse. So only\nboolean, number, string, null and non-class objects will be serialized and deserialized in a\nnon-lossy manner.</p>\n\n \n</section>\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n<section class=\"instance-methods\">\n <h2 id=\"methods\">Methods<a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#methods\"><i class=\"material-icons\">link</i></a></h2>\n \n <a id=\"get\"></a>\n<table class=\"is-full-width method-table instance-method\">\n <thead><tr><th>\n <div class=\"with-github-links\">\n <h3 id=\"get\">\n get()\n \n <a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#get\"><i class=\"material-icons\">link</i></a></h3>\n <div class=\"github-links\">\n <a href=\"https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L92-L98\" aria-label=\"Suggest Edits\" title=\"Suggest Edits\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">mode_edit</i></a>\n <a href=\"https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L92-L98\" aria-label=\"View Source\" title=\"View Source\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">code</i></a>\n</div>\n </div>\n </th></tr></thead>\n <tbody>\n <tr>\n <td class=\"short-description\">\n <p>Get the value corresponding to a key. Return <code>defaultValue</code> if key is not found.</p>\n\n </td>\n </tr>\n \n <tr>\n <td>\n <div class=\"overload-info\">\n \n\n <code-example language=\"ts\" hidecopy=\"true\" class=\"no-box api-heading\"><span class=\"member-name\">get</span>&#x3C;T>(key: <a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a>&#x3C;T>, defaultValue: T): T</code-example>\n\n \n\n <h6 class=\"no-anchor\" id=\"parameters\">Parameters</h6>\n <table class=\"is-full-width list-table parameters-table instance-method-overload-parameters\">\n <tbody>\n \n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>key</code>\n </td>\n <td class=\"param-type\"><code><a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a><t></t></code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>defaultValue</code>\n </td>\n <td class=\"param-type\"><code>T</code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n </tbody>\n</table>\n\n \n <h6 class=\"no-anchor\" id=\"returns\">Returns</h6>\n <p><code>T</code></p>\n\n \n\n\n \n\n \n</div>\n </td>\n </tr>\n \n\n \n\n \n </tbody>\n</table>\n\n \n <a id=\"set\"></a>\n<table class=\"is-full-width method-table instance-method\">\n <thead><tr><th>\n <div class=\"with-github-links\">\n <h3 id=\"set\">\n set()\n \n <a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#set\"><i class=\"material-icons\">link</i></a></h3>\n <div class=\"github-links\">\n <a href=\"https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L99-L105\" aria-label=\"Suggest Edits\" title=\"Suggest Edits\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">mode_edit</i></a>\n <a href=\"https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L99-L105\" aria-label=\"View Source\" title=\"View Source\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">code</i></a>\n</div>\n </div>\n </th></tr></thead>\n <tbody>\n <tr>\n <td class=\"short-description\">\n <p>Set the value corresponding to a key.</p>\n\n </td>\n </tr>\n \n <tr>\n <td>\n <div class=\"overload-info\">\n \n\n <code-example language=\"ts\" hidecopy=\"true\" class=\"no-box api-heading\"><span class=\"member-name\">set</span>&#x3C;T>(key: <a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a>&#x3C;T>, value: T): void</code-example>\n\n \n\n <h6 class=\"no-anchor\" id=\"parameters-1\">Parameters</h6>\n <table class=\"is-full-width list-table parameters-table instance-method-overload-parameters\">\n <tbody>\n \n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>key</code>\n </td>\n <td class=\"param-type\"><code><a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a><t></t></code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>value</code>\n </td>\n <td class=\"param-type\"><code>T</code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n </tbody>\n</table>\n\n \n <h6 class=\"no-anchor\" id=\"returns-1\">Returns</h6>\n <p><code>void</code></p>\n\n \n\n\n \n\n \n</div>\n </td>\n </tr>\n \n\n \n\n \n </tbody>\n</table>\n\n \n <a id=\"remove\"></a>\n<table class=\"is-full-width method-table instance-method\">\n <thead><tr><th>\n <div class=\"with-github-links\">\n <h3 id=\"remove\">\n remove()\n \n <a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#remove\"><i class=\"material-icons\">link</i></a></h3>\n <div class=\"github-links\">\n <a href=\"https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L106-L112\" aria-label=\"Suggest Edits\" title=\"Suggest Edits\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">mode_edit</i></a>\n <a href=\"https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L106-L112\" aria-label=\"View Source\" title=\"View Source\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">code</i></a>\n</div>\n </div>\n </th></tr></thead>\n <tbody>\n <tr>\n <td class=\"short-description\">\n <p>Remove a key from the store.</p>\n\n </td>\n </tr>\n \n <tr>\n <td>\n <div class=\"overload-info\">\n \n\n <code-example language=\"ts\" hidecopy=\"true\" class=\"no-box api-heading\"><span class=\"member-name\">remove</span>&#x3C;T>(key: <a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a>&#x3C;T>): void</code-example>\n\n \n\n <h6 class=\"no-anchor\" id=\"parameters-2\">Parameters</h6>\n <table class=\"is-full-width list-table parameters-table instance-method-overload-parameters\">\n <tbody>\n \n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>key</code>\n </td>\n <td class=\"param-type\"><code><a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a><t></t></code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n </tbody>\n</table>\n\n \n <h6 class=\"no-anchor\" id=\"returns-2\">Returns</h6>\n <p><code>void</code></p>\n\n \n\n\n \n\n \n</div>\n </td>\n </tr>\n \n\n \n\n \n </tbody>\n</table>\n\n \n <a id=\"hasKey\"></a>\n<table class=\"is-full-width method-table instance-method\">\n <thead><tr><th>\n <div class=\"with-github-links\">\n <h3 id=\"haskey\">\n hasKey()\n \n <a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#haskey\"><i class=\"material-icons\">link</i></a></h3>\n <div class=\"github-links\">\n <a href=\"https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L113-L119\" aria-label=\"Suggest Edits\" title=\"Suggest Edits\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">mode_edit</i></a>\n <a href=\"https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L113-L119\" aria-label=\"View Source\" title=\"View Source\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">code</i></a>\n</div>\n </div>\n </th></tr></thead>\n <tbody>\n <tr>\n <td class=\"short-description\">\n <p>Test whether a key exists in the store.</p>\n\n </td>\n </tr>\n \n <tr>\n <td>\n <div class=\"overload-info\">\n \n\n <code-example language=\"ts\" hidecopy=\"true\" class=\"no-box api-heading\"><span class=\"member-name\">hasKey</span>&#x3C;T>(key: <a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a>&#x3C;T>)</code-example>\n\n \n\n <h6 class=\"no-anchor\" id=\"parameters-3\">Parameters</h6>\n <table class=\"is-full-width list-table parameters-table instance-method-overload-parameters\">\n <tbody>\n \n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>key</code>\n </td>\n <td class=\"param-type\"><code><a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a><t></t></code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n </tbody>\n</table>\n\n \n\n\n \n\n \n</div>\n </td>\n </tr>\n \n\n \n\n \n </tbody>\n</table>\n\n \n <a id=\"onSerialize\"></a>\n<table class=\"is-full-width method-table instance-method\">\n <thead><tr><th>\n <div class=\"with-github-links\">\n <h3 id=\"onserialize\">\n onSerialize()\n \n <a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#onserialize\"><i class=\"material-icons\">link</i></a></h3>\n <div class=\"github-links\">\n <a href=\"https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L120-L126\" aria-label=\"Suggest Edits\" title=\"Suggest Edits\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">mode_edit</i></a>\n <a href=\"https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L120-L126\" aria-label=\"View Source\" title=\"View Source\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">code</i></a>\n</div>\n </div>\n </th></tr></thead>\n <tbody>\n <tr>\n <td class=\"short-description\">\n <p>Register a callback to provide the value for a key when <code>toJson</code> is called.</p>\n\n </td>\n </tr>\n \n <tr>\n <td>\n <div class=\"overload-info\">\n \n\n <code-example language=\"ts\" hidecopy=\"true\" class=\"no-box api-heading\"><span class=\"member-name\">onSerialize</span>&#x3C;T>(key: <a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a>&#x3C;T>, callback: () => T): void</code-example>\n\n \n\n <h6 class=\"no-anchor\" id=\"parameters-4\">Parameters</h6>\n <table class=\"is-full-width list-table parameters-table instance-method-overload-parameters\">\n <tbody>\n \n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>key</code>\n </td>\n <td class=\"param-type\"><code><a href=\"api/platform-browser/StateKey\" class=\"code-anchor\">StateKey</a><t></t></code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n <tr class=\"instance-method-overload-parameter\">\n <td class=\"param-name\">\n <a id=\"\"></a>\n <code>callback</code>\n </td>\n <td class=\"param-type\"><code>() => T</code></td>\n <td class=\"param-description\">\n \n \n </td>\n </tr>\n </tbody>\n</table>\n\n \n <h6 class=\"no-anchor\" id=\"returns-3\">Returns</h6>\n <p><code>void</code></p>\n\n \n\n\n \n\n \n</div>\n </td>\n </tr>\n \n\n \n\n \n </tbody>\n</table>\n\n \n <a id=\"toJson\"></a>\n<table class=\"is-full-width method-table instance-method\">\n <thead><tr><th>\n <div class=\"with-github-links\">\n <h3 id=\"tojson\">\n toJson()\n \n <a title=\"Link to this heading\" class=\"header-link\" aria-hidden=\"true\" href=\"api/platform-browser/TransferState#tojson\"><i class=\"material-icons\">link</i></a></h3>\n <div class=\"github-links\">\n <a href=\"https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L127-L143\" aria-label=\"Suggest Edits\" title=\"Suggest Edits\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">mode_edit</i></a>\n <a href=\"https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L127-L143\" aria-label=\"View Source\" title=\"View Source\"><i class=\"material-icons\" aria-hidden=\"true\" role=\"img\">code</i></a>\n</div>\n </div>\n </th></tr></thead>\n <tbody>\n <tr>\n <td class=\"short-description\">\n <p>Serialize the current state of the store to JSON.</p>\n\n </td>\n </tr>\n \n <tr>\n <td>\n <div class=\"overload-info\">\n \n\n <code-example language=\"ts\" hidecopy=\"true\" class=\"no-box api-heading\"><span class=\"member-name\">toJson</span>(): string</code-example>\n\n \n\n <h6 class=\"no-anchor\" id=\"parameters-5\">Parameters</h6>\n <p>There are no parameters.</p>\n\n \n <h6 class=\"no-anchor\" id=\"returns-4\">Returns</h6>\n <p><code>string</code></p>\n\n \n\n\n \n\n \n</div>\n </td>\n </tr>\n \n\n \n\n \n </tbody>\n</table>\n\n \n</section>\n\n\n\n \n\n\n </div>\n</article>\n\n<!-- links to this doc:\n - api/platform-browser\n - api/platform-browser/BrowserTransferStateModule\n - api/platform-browser/StateKey\n - api/platform-browser/makeStateKey\n - api/platform-server\n - api/platform-server/ServerTransferStateModule\n-->\n<!-- links from this doc:\n - /api\n - api/platform-browser\n - api/platform-browser/BrowserTransferStateModule\n - api/platform-browser/StateKey\n - api/platform-browser/TransferState#description\n - api/platform-browser/TransferState#get\n - api/platform-browser/TransferState#hasKey\n - api/platform-browser/TransferState#haskey\n - api/platform-browser/TransferState#methods\n - api/platform-browser/TransferState#onSerialize\n - api/platform-browser/TransferState#onserialize\n - api/platform-browser/TransferState#remove\n - api/platform-browser/TransferState#set\n - api/platform-browser/TransferState#toJson\n - api/platform-browser/TransferState#tojson\n - api/platform-browser/TransferState#transferstate\n - api/platform-server/ServerTransferStateModule\n - https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L106-L112\n - https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L113-L119\n - https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L120-L126\n - https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L127-L143\n - https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L67-L144\n - https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L92-L98\n - https://github.com/angular/angular/edit/master/packages/platform-browser/src/browser/transfer_state.ts?message=docs(platform-browser)%3A%20describe%20your%20change...#L99-L105\n - https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L106-L112\n - https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L113-L119\n - https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L120-L126\n - https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L127-L143\n - https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L67-L144\n - https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L92-L98\n - https://github.com/angular/angular/tree/12.0.0-next.7/packages/platform-browser/src/browser/transfer_state.ts#L99-L105\n-->"
}