當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript commutable.insertCellAt函數代碼示例

本文整理匯總了TypeScript中@nteract/commutable.insertCellAt函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript insertCellAt函數的具體用法?TypeScript insertCellAt怎麽用?TypeScript insertCellAt使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了insertCellAt函數的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: insertCellAt

 return state.update("notebook", (notebook: ImmutableNotebook) => {
   const cellOrder: Immutable.List<CellId> = notebook.get(
     "cellOrder",
     Immutable.List()
   );
   const index = cellOrder.indexOf(id);
   return insertCellAt(notebook, cell, cellId, index);
 });
開發者ID:kelleyblackmore,項目名稱:nteract,代碼行數:8,代碼來源:notebook.ts

示例2: List

 return state.update("notebook", (notebook: ImmutableNotebook) => {
   const index = notebook.get("cellOrder", List()).indexOf(id) + 1;
   return insertCellAt(
     notebook,
     (cell as ImmutableMarkdownCell).set("source", source),
     cellId,
     index
   );
 });
開發者ID:nteract,項目名稱:nteract,代碼行數:9,代碼來源:notebook.ts

示例3: createCellAppend

function createCellAppend(
  state: NotebookModel,
  action: actionTypes.CreateCellAppend
): RecordOf<DocumentRecordProps> {
  const { cellType } = action.payload;
  const notebook: ImmutableNotebook = state.get("notebook");
  const cellOrder: List<CellId> = notebook.get("cellOrder", List());
  const cell: ImmutableCell =
    cellType === "markdown" ? emptyMarkdownCell : emptyCodeCell;
  const index = cellOrder.count();
  const cellId = uuid();
  return state.set("notebook", insertCellAt(notebook, cell, cellId, index));
}
開發者ID:nteract,項目名稱:nteract,代碼行數:13,代碼來源:notebook.ts

示例4: focusNextCell

function focusNextCell(
  state: NotebookModel,
  action: actionTypes.FocusNextCell
): RecordOf<DocumentRecordProps> {
  const cellOrder = state.getIn(["notebook", "cellOrder"]);

  const id = action.payload.id ? action.payload.id : state.get("cellFocused");
  // If for some reason we neither have an ID here or a focused cell, we just
  // keep the state consistent
  if (!id) {
    return state;
  }

  const curIndex = cellOrder.findIndex((foundId: CellId) => id === foundId);
  const curCellType = state.getIn(["notebook", "cellMap", id, "cell_type"]);

  const nextIndex = curIndex + 1;

  // When at the end, create a new cell
  if (nextIndex >= cellOrder.size) {
    if (!action.payload.createCellIfUndefined) {
      return state;
    }

    const cellId: string = uuid();
    const cell = curCellType === "code" ? emptyCodeCell : emptyMarkdownCell;

    const notebook: ImmutableNotebook = state.get("notebook");

    return state
      .set("cellFocused", cellId)
      .set("notebook", insertCellAt(notebook, cell, cellId, nextIndex));
  }

  // When in the middle of the notebook document, move to the next cell
  return state.set("cellFocused", cellOrder.get(nextIndex));
}
開發者ID:nteract,項目名稱:nteract,代碼行數:37,代碼來源:notebook.ts


注:本文中的@nteract/commutable.insertCellAt函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。