Skip to content
Mithril.js 2
Main Navigation NávodAPI

čeština

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
magyar

čeština

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
magyar

Vzhled

Sidebar Navigation

API

Základní API

m(selector, attributes, children)

render(element, vnodes)

mount(root, component)

route(root, defaultRoute, routes)

request(options)

parseQueryString(string)

buildQueryString(object)

buildPathname(object)

parsePathname(string)

Trust(html)

fragment(attrs, children)

redraw()

censor(object, extra)

Volitelné API

stream()

Návod

Na této stránce

fragment(attrs, children) ​

Popis ​

Umožňuje připojit metody životního cyklu k fragmentu vnode vnode.

javascript
var groupVisible = true;
var log = function () {
  console.log('group is now visible');
};

m('ul', [
  m('li', 'child 1'),
  m('li', 'child 2'),
  groupVisible
    ? m.fragment({ oninit: log }, [
        // fragment obsahující dva elementy
        m('li', 'child 3'),
        m('li', 'child 4'),
      ])
    : null,
]);

Signatura ​

Generuje fragment vnode.

vnode = m.fragment(attrs, children)

ArgumentTypPovinnýPopis
attrsObjectNeHTML atributy nebo vlastnosti elementu.
childrenArray<Vnode>|String|Number|BooleanNePotomci vnodes. Může být zapsán jako splat argument.
returnsVnodeFragment vnode.

Jak číst signatury

Jak to funguje ​

m.fragment() vytváří fragment vnode s atributy. Je určen pro pokročilé případy použití, které zahrnují klíče nebo metody životního cyklu.

Fragment vnode reprezentuje seznam DOM elementů. Pokud potřebujete běžný element vnode, který reprezentuje pouze jeden DOM element a nevyžaduje logiku s klíči, použijte m().

Běžně můžete použít jednoduchá pole nebo splaty namísto explicitního vytváření seznamu uzlů:

javascript
var groupVisible = true;

m(
  'ul',
  m('li', 'child 1'),
  m('li', 'child 2'),
  groupVisible
    ? [
        // fragment obsahující dva elementy
        m('li', 'child 3'),
        m('li', 'child 4'),
      ]
    : null
);

JavaScriptová pole však nemohou mít klíče ani obsahovat metody životního cyklu. Jednou z možností je vytvořit obalový element pro umístění klíče nebo metody životního cyklu, ale někdy není žádoucí mít další element (například ve složitých tabulkových strukturách). V těchto případech lze použít fragment vnode.

Použití m.fragment namísto ručního vytváření objektové struktury vnode má několik výhod: m.fragment vytváří monomorfní objekty, které mají lepší výkonnostní charakteristiky než dynamické vytváření objektů. Používání m.fragment navíc jasně ukazuje vaše záměry ostatním vývojářům a snižuje pravděpodobnost, že omylem nastavíte atributy na samotném objektu vnode, a ne na jeho atributovém objektu attrs.

Pager
Předchozí stránkaTrust(html)
Další stránkaredraw()

Vydáno pod licencí MIT.

Copyright (c) 2024 Mithril Contributors

https://mithril.js.org/fragment.html

Vydáno pod licencí MIT.

Copyright (c) 2024 Mithril Contributors