本文整理汇总了TypeScript中@library/utility/appUtils.onReady函数的典型用法代码示例。如果您正苦于以下问题:TypeScript onReady函数的具体用法?TypeScript onReady怎么用?TypeScript onReady使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了onReady函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: registerReducer
/*
* @author Adam (charrondev) Charron <adam.c@vanillaforums.com>
* @copyright 2009-2019 Vanilla Forums Inc.
* @license GPL-2.0-only
*/
import editorReducer from "@rich-editor/state/editorReducer";
import { registerReducer } from "@library/redux/reducerRegistry";
import { onReady, onContent } from "@library/utility/appUtils";
registerReducer("editor", editorReducer);
onReady(() => {
void setupEditor();
});
onContent(setupEditor);
const MOUNTED_CLASS = "js-isMounted";
/**
* Set up the new discussion form if it exists.
*/
async function setupEditor() {
const editorMountPoints = document.querySelectorAll(".richEditor");
if (editorMountPoints.length > 0) {
const mountEditor = await import(/* webpackChunkName: "mountEditor" */ "@rich-editor/mountEditor");
editorMountPoints.forEach(mountPoint => {
if (!mountPoint.classList.contains(MOUNTED_CLASS)) {
mountPoint.classList.add(MOUNTED_CLASS);
const popup = mountPoint.closest(".Popup");
if (popup) {
popup.classList.add("hasRichEditor");
示例2: onReady
/*
* @author Adam (charrondev) Charron <adam.c@vanillaforums.com>
* @copyright 2009-2019 Vanilla Forums Inc.
* @license GPL-2.0-only
*/
import { onReady, onContent } from "@library/utility/appUtils";
onReady(handleRichEditorInputFormatterOptions);
onContent(handleRichEditorInputFormatterOptions);
function handleRichEditorInputFormatterOptions() {
const inputFormatterSelect = document.getElementById("Form_Garden-dot-InputFormatter") as HTMLSelectElement;
if (inputFormatterSelect) {
updateRichFormValues(inputFormatterSelect.value);
inputFormatterSelect.addEventListener("change", () => {
updateRichFormValues(inputFormatterSelect.value);
});
}
}
function updateRichFormValues(inputFormatter: string) {
const richFormGroups = document.querySelectorAll(".js-richFormGroup");
if (inputFormatter === "Rich") {
richFormGroups.forEach(group => {
group.classList.remove("Hidden");
});
} else {
richFormGroups.forEach(group => {
group.classList.add("Hidden");
});
示例3: onReady
/*
* @copyright 2009-2019 Vanilla Forums Inc.
* @license GPL-2.0-only
*/
import { onReady, onContent } from "@library/utility/appUtils";
onReady(handleImageUploadInputDisplay);
onContent(handleImageUploadInputDisplay);
function handleImageUploadInputDisplay() {
const imageUploadEnabled = document.getElementById("Form_ImageUpload-dot-Limits-dot-Enabled") as HTMLInputElement;
if (imageUploadEnabled) {
const displayClass = "dimensionsDisabled";
const imageUploadDimensions = Array.from(document.getElementsByClassName("ImageUploadLimitsDimensions"));
if (imageUploadEnabled.checked) {
imageUploadDimensions.forEach(input => {
input.classList.remove(displayClass);
});
}
imageUploadEnabled.addEventListener("click", () => {
if (imageUploadEnabled.checked) {
imageUploadDimensions.forEach(input => {
input.classList.remove(displayClass);
});
} else {
imageUploadDimensions.forEach(input => {
input.classList.add(displayClass);
示例4: onReady
/**
* Entrypoint for gradually replacing global.js
*
* At some point everything in this folder should be able to be removed (new base theme).
*
* @copyright 2009-2019 Vanilla Forums Inc.
* @license GPL-2.0-only
*/
import { onContent, onReady } from "@library/utility/appUtils";
import { initializeAtComplete } from "@dashboard/legacy/atwho";
// Initialize legacy @mentions for all BodyBox elements.
if ($.fn.atwho) {
onReady(() => initializeAtComplete(".BodyBox,.js-bodybox"));
onContent(() => initializeAtComplete(".BodyBox,.js-bodybox"));
// Also assign this function to the global `gdn` object.
// The advanced editor calls this function directly when in wysiwyg format, as it needs to
// handle an iframe, and the editor instance needs to be referenced. The advanced editor does not yet use
// this build process so it can only communicate through here with a global.
window.gdn.atCompleteInit = initializeAtComplete;
}
示例5: onReady
* @copyright 2009-2019 Vanilla Forums Inc.
* @license GPL-2.0-only
*/
import { onReady } from "@library/utility/appUtils";
import { IThemeState, themeReducer } from "@library/theming/themeReducer";
import { IUsersStoreState, usersReducer } from "@library/features/users/userModel";
import { logError } from "@library/utility/utils";
import { Reducer, ReducersMapObject } from "redux";
let haveGot = false;
let wasReadyCalled = false;
const reducers = {};
onReady(() => {
wasReadyCalled = true;
});
export function registerReducer(name: string, reducer: Reducer) {
if (haveGot) {
logError("Cannot register reducer %s after reducers applied to the store.", name);
} else {
reducers[name] = reducer;
}
}
export interface ICoreStoreState extends IUsersStoreState {
theme: IThemeState;
}
export function getReducersReady(): boolean {
示例6: initEmojiSupport
export function initEmojiSupport() {
// Emoji
onReady(() => convertToSafeEmojiCharacters(document.body));
onContent(() => convertToSafeEmojiCharacters(document.body));
}