Documentation ¶
Overview ¶
Package gview implements a template engine based on text/template.
Reserved template variable names:
I18nLanguage: Assign this variable to define i18n language for each page.
Index ¶
- Constants
- func ParseContent(ctx context.Context, content string, params ...Params) (string, error)
- type Config
- type FuncMap
- type Params
- type View
- func (view *View) AddPath(path string) error
- func (view *View) Assign(key string, value interface{})
- func (view *View) Assigns(data Params)
- func (view *View) BindFunc(name string, function interface{})
- func (view *View) BindFuncMap(funcMap FuncMap)
- func (view *View) GetDefaultFile() string
- func (view *View) Parse(ctx context.Context, file string, params ...Params) (result string, err error)
- func (view *View) ParseContent(ctx context.Context, content string, params ...Params) (string, error)
- func (view *View) ParseDefault(ctx context.Context, params ...Params) (result string, err error)
- func (view *View) SetAutoEncode(enable bool)
- func (view *View) SetConfig(config Config) error
- func (view *View) SetConfigWithMap(m map[string]interface{}) error
- func (view *View) SetDefaultFile(file string)
- func (view *View) SetDelimiters(left, right string)
- func (view *View) SetI18n(manager *gi18n.Manager)
- func (view *View) SetPath(path string) error
Constants ¶
const (
// Default group name for instance usage.
DefaultName = "default"
)
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶ added in v1.10.0
type Config struct { Paths []string `json:"paths"` // Searching array for path, NOT concurrent-safe for performance purpose. Data map[string]interface{} `json:"data"` // Global template variables including configuration. DefaultFile string `json:"defaultFile"` // Default template file for parsing. Delimiters []string `json:"delimiters"` // Custom template delimiters. AutoEncode bool `json:"autoEncode"` // Automatically encodes and provides safe html output, which is good for avoiding XSS. I18nManager *gi18n.Manager `json:"-"` // I18n manager for the view. }
Config is the configuration object for template engine.
func DefaultConfig ¶ added in v1.12.2
func DefaultConfig() Config
DefaultConfig creates and returns a configuration object with default configurations.
type FuncMap ¶
type FuncMap = map[string]interface{} // FuncMap is type for custom template functions.
type View ¶
type View struct {
// contains filtered or unexported fields
}
View object for template engine.
func Instance ¶
Instance returns an instance of View with default settings. The parameter <name> is the name for the instance.
func New ¶
New returns a new view object. The parameter <path> specifies the template directory path to load template files.
func (*View) Assign ¶
Assign binds a global template variable to current view object. Note that it's not concurrent-safe, which means it would panic if it's called in multiple goroutines in runtime.
func (*View) Assigns ¶
Assigns binds multiple global template variables to current view object. Note that it's not concurrent-safe, which means it would panic if it's called in multiple goroutines in runtime.
func (*View) BindFunc ¶
BindFunc registers customized global template function named <name> with given function <function> to current view object. The <name> is the function name which can be called in template content.
func (*View) BindFuncMap ¶
BindFuncMap registers customized global template functions by map to current view object. The key of map is the template function name and the value of map is the address of customized function.
func (*View) GetDefaultFile ¶ added in v1.12.2
GetDefaultFile returns default template file for parsing.
func (*View) Parse ¶
func (view *View) Parse(ctx context.Context, file string, params ...Params) (result string, err error)
Parse parses given template file <file> with given template variables <params> and returns the parsed template content.
func (*View) ParseContent ¶
func (view *View) ParseContent(ctx context.Context, content string, params ...Params) (string, error)
ParseContent parses given template content <content> with template variables <params> and returns the parsed content in []byte.
func (*View) ParseDefault ¶ added in v1.10.0
ParseDefault parses the default template file with params.
func (*View) SetAutoEncode ¶ added in v1.11.0
SetAutoEncode enables/disables automatically html encoding feature. When AutoEncode feature is enables, view engine automatically encodes and provides safe html output, which is good for avoid XSS.
func (*View) SetConfigWithMap ¶ added in v1.10.0
SetConfigWithMap set configurations with map for the view.
func (*View) SetDefaultFile ¶ added in v1.10.0
SetDefaultFile sets default template file for parsing.
func (*View) SetDelimiters ¶
SetDelimiters sets customized delimiters for template parsing.