本文整理匯總了TypeScript中prosemirror-state.Transaction類的典型用法代碼示例。如果您正苦於以下問題:TypeScript Transaction類的具體用法?TypeScript Transaction怎麽用?TypeScript Transaction使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Transaction類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1:
const applyCodeBlock = (from: number, to: number, tr: Transaction): void => {
const { schema } = tr.doc.type
if (schema.marks.code) {
const codeMark = schema.marks.code.create()
tr.addMark(tr.mapping.map(from), tr.mapping.map(to), codeMark).setStoredMarks([codeMark])
}
}
示例2: cardAction
export const resolveCard = url => (tr: Transaction) =>
cardAction(tr, {
type: "RESOLVE",
url,
})
示例3: function
return function(state: EditorState, dispatch) {
let { tr } = state
const { $from, $to } = state.selection
const { paragraph } = state.schema.nodes
const { alignment, indentation } = state.schema.marks
/** Alignment or Indentation is not valid inside block types */
const removeAlignTr = removeBlockMarks(state, [alignment, indentation])
tr = removeAlignTr || tr
const range = $from.blockRange($to) as any
const wrapping = range && (findWrapping(range, type) as any)
if (range && wrapping) {
tr.wrap(range, wrapping).scrollIntoView()
} else {
/** We always want to append a block type */
tr.replaceRangeWith(
$to.pos + 1,
$to.pos + 1,
type.createAndFill({}, paragraph.create()),
)
tr.setSelection(Selection.near(tr.doc.resolve(state.selection.to + 1)))
}
if (dispatch) {
dispatch(tr)
}
return true
}