The attributes passed into the component.
A class name to apply to the body while the route is active.
The discussion that is being viewed.
The root DOM element for the component.
The number of the first post that is currently visible in the viewport.
Whether we should scroll to the top of the page when its rendered.
Class component state that is persisted between redraws.
Updating this will not automatically trigger a redraw, unlike other frameworks.
This is different to Vnode state, which is always an instance of your class component.
This is undefined
by default.
A public API for interacting with the post stream.
Whether the browser should restore scroll state on refreshes.
Returns a jQuery object for this component's element. If you pass in a selector string, this method will return a jQuery object, using the current element as its buffer.
For example, calling component.$('li')
will return a jQuery object
containing all of the li
elements inside the DOM element of this
component.
the jQuery object for the DOM node
Renders the discussion's hero.
Load the discussion from the API or use the preloaded one.
List of components shown while the discussion is loading.
List of items rendered inside the main page content container.
List of items rendered as the main page content.
When the posts that are visible in the post stream change (i.e. the user scrolls up or down), then we update the URL and mark the posts as read.
Get the parameters that should be passed in the API request to get the discussion.
Initialize the component to display the given discussion.
Function that renders the sidebarItems
ItemList.
Build an item list for the contents of the sidebar.
Convenience method to attach a component without JSX.
Has the same effect as calling m(THIS_CLASS, attrs, children)
.
Initialize the component's attrs.
This can be used to assign default values for missing, optional attrs.
Generated using TypeDoc version 0.22.10
The
DiscussionPage
component displays a whole discussion page, including the discussion list pane, the hero, the posts, and the sidebar.