mirror of
https://github.com/gohugoio/hugo.git
synced 2024-12-29 00:31:15 +00:00
41 lines
1 KiB
Markdown
41 lines
1 KiB
Markdown
---
|
|
title: merge
|
|
description: "`merge` deep merges two maps and returns the resulting map."
|
|
date: 2019-08-08
|
|
categories: [functions]
|
|
menu:
|
|
docs:
|
|
parent: "functions"
|
|
keywords: [dictionary]
|
|
signature: ["collections.Merge MAP MAP...", "merge MAP MAP..."]
|
|
workson: []
|
|
hugoversion: "0.56.0"
|
|
relatedfuncs: [dict, append, reflect.IsMap, reflect.IsSlice]
|
|
aliases: []
|
|
---
|
|
|
|
Merge creates a copy of the final `MAP` and merges any preceding `MAP` into it in reverse order.
|
|
Key handling is case-insensitive.
|
|
|
|
An example merging two maps.
|
|
|
|
```go-html-template
|
|
{{ $default_params := dict "color" "blue" "width" "50%" "height" "25%" "icon" "star" }}
|
|
{{ $user_params := dict "color" "red" "icon" "mail" "extra" (dict "duration" 2) }}
|
|
{{ $params := merge $default_params $user_params }}
|
|
```
|
|
|
|
Resulting __$params__:
|
|
|
|
```
|
|
"color": "red"
|
|
"extra":
|
|
"duration": 2
|
|
"height": "25%"
|
|
"icon": "mail"
|
|
"width": "50%"
|
|
```
|
|
|
|
{{% note %}}
|
|
Regardless of depth, merging only applies to maps. For slices, use [append]({{< ref "functions/append" >}})
|
|
{{% /note %}}
|