亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue?LogicFlow更多配置選項(xiàng)示例詳解

 更新時(shí)間:2023年01月12日 08:31:50   作者:小鑫同學(xué)  
這篇文章主要為大家介紹了vue?LogicFlow更多配置選項(xiàng)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

??推薦幾個(gè)好用的工具

進(jìn)入正題

LogicFlow 是一款流程圖編輯框架,提供了一系列流程圖交互、編輯所必需的功能和靈活的節(jié)點(diǎn)自定義、插件等拓展機(jī)制。LogicFlow支持前端研發(fā)自定義開發(fā)各種邏輯編排場景,如流程圖、ER圖、BPMN流程等。在工作審批配置、機(jī)器人邏輯編排、無代碼平臺流程配置都有較好的應(yīng)用。

這一節(jié)將講解快速上手 LogicFlow 流程圖編輯框架的更多配置選項(xiàng),項(xiàng)目整體基于Vue3+Vite3+Ts4開發(fā),為幫助還為熟練使用 Vue3 和 Typescript 語法的小伙伴提供便利,如果你已經(jīng)很熟練在Vue3中的開發(fā)習(xí)慣,建議直接訪問 LogicFlow 將獲取完整的入門指南。

1. 設(shè)置主題 Theme:

LF設(shè)置主題時(shí)提供了兩種方式的實(shí)現(xiàn),分別是在實(shí)例化LF對象時(shí)通過 style 選項(xiàng)進(jìn)行配置,另一種方式是在實(shí)例化LF對象后使用內(nèi)置的 lf.setTheme({}) 函數(shù)進(jìn)行配置

設(shè)置主題的常用屬性列表(完整的選項(xiàng)列表參見ThemeApi):

屬性名說明
stroke屬性定義了給定圖形元素的外輪廓的顏色
stroke-dasharray屬性可控制用來描邊的點(diǎn)劃線的圖案范式
stroke-width屬性指定了當(dāng)前對象的輪廓的寬度
fill屬性用來定義給定圖形元素內(nèi)部的顏色
fill-opacity屬性指定了填色的不透明度或當(dāng)前對象的內(nèi)容物的不透明度
font-size屬性定義文本字體大小
color屬性定義文本顏色
  • 實(shí)例化LF時(shí)配置:
const styleConfig = {} // 主題配置項(xiàng)
lf.value = new LogicFlow({
  container: container.value,
  grid: true,
  // 實(shí)例化LF時(shí)配置主題
  style: styleConfig,
})
  • 實(shí)例化LF后配置:
const styleConfig = {} // 主題配置項(xiàng)
lf.value.setTheme(styleConfig);

PS:節(jié)點(diǎn)的 width、height、r 等類似屬性統(tǒng)一歸類為形狀屬性,因其會對錨點(diǎn)位置、連線計(jì)算產(chǎn)生影響,顧不能通過主題進(jìn)行設(shè)置,僅支持在自定義時(shí)調(diào)整。

2. 設(shè)置網(wǎng)格 Gird:

網(wǎng)格在LF中主要起到的作用是對節(jié)點(diǎn)的中心點(diǎn)和移動(dòng)時(shí)的定位,默認(rèn)網(wǎng)格選項(xiàng)關(guān)閉,中心點(diǎn)和移動(dòng)的最小單位為1px,當(dāng)開啟網(wǎng)格選項(xiàng)后,渲染的中心點(diǎn)和移動(dòng)時(shí)的最小單位將調(diào)整為20px。在自定義節(jié)點(diǎn)的寬高時(shí)為了更好的與網(wǎng)格對齊,建議設(shè)置為網(wǎng)格最小單位的整數(shù)倍。

const gridConfig = {
  size: 20,
  visible: true,
  type: 'mesh',
  config: {
    color: '#ababab',
    thickness: 1,
  },
}
lf.value = new LogicFlow({
  container: container.value,
  grid: gridConfig,
})

3. 設(shè)置對齊線 Snapline:

網(wǎng)格解決了一個(gè)節(jié)點(diǎn)的中心點(diǎn)和移動(dòng)時(shí)的定位對齊問題,那么多個(gè)節(jié)點(diǎn)的位置調(diào)整就需要用到對齊線輔助進(jìn)行了,該snapline選項(xiàng)默認(rèn)開啟,對齊線的樣式可以通過設(shè)置主題中的選項(xiàng)來自定義;

const styleConfig = {
  snapline: {
    stroke: '#1E90FF', // 對齊線顏色
    strokeWidth: 1, // 對齊線寬度
  },
}
lf.value.setTheme(styleConfig);

4. 設(shè)置背景 Background:

在前面的示例中一直是啟用了Gird來充當(dāng)著背景的角色,LF對象在實(shí)例化的時(shí)候同樣可以通過選項(xiàng)來控制背景,默認(rèn)是關(guān)閉的狀態(tài),修改的選項(xiàng)是background;

lf.value = new LogicFlow({
  container: container.value,
  // grid: true, // 關(guān)閉網(wǎng)格
  background: {
    backgroundImage: "url(../grid.svg)",
    backgroundRepeat: "repeat"
  }
})

5. 設(shè)置鍵盤快捷鍵 Keyboard:

快捷鍵在流程圖產(chǎn)品中也是比不可少的一塊功能,可以大大方便使用者的體驗(yàn),在LF中默認(rèn)關(guān)閉了快捷鍵的使用,可以在實(shí)例化LF時(shí)通過啟用enabled選項(xiàng)來支持;LF除內(nèi)置的快捷鍵外也支持自定義來擴(kuò)展快捷鍵的使用;

  • 內(nèi)置快捷鍵
快捷鍵功能
cmd + c 或 ctrl + c復(fù)制節(jié)點(diǎn)
cmd + v 或 ctrl + v粘貼節(jié)點(diǎn)
cmd + z 或 ctrl + z撤銷操作
cmd + y 或 ctrl + y回退操作
backspace刪除操作
  • 啟用快捷鍵
lf.value = new LogicFlow({
  container: container.value,
  keyboard: {
    enabled: true
  },
})
  • 自定義快捷鍵:快捷鍵keys的定義規(guī)則同mousetrap;下面使用官網(wǎng)的示例來演示自義定刪除節(jié)點(diǎn)的快捷鍵觸發(fā)時(shí)增加二次確認(rèn)的提醒;
lf.value = new LogicFlow({
  container: container.value,
  keyboard: {
    enabled: true,
    shortcuts: [
      {
        keys: ["backspace"],
        callback: () => {
          const r = window.confirm("確定要?jiǎng)h除嗎?");
          if (r) {
            const elements = lf.value!.getSelectElements(true);
            lf.value?.clearSelectElements();
            elements.edges.forEach((edge: EdgeConfig) => lf.value!.deleteEdge(edge.id || ''));
            elements.nodes.forEach((node: NodeConfig) => lf.value!.deleteNode(node.id || ''));
          }
        }
      }
    ]
  },
})

6. 設(shè)置圖編輯方式:

LF提供了更多方便控制圖編輯方式的選項(xiàng),同樣是可以在實(shí)例化LF時(shí)通過選項(xiàng)初始化,也支持實(shí)例化LF后通過lf.updateEditConfig函數(shù)進(jìn)行調(diào)整;

圖編輯模式支持的選項(xiàng)列舉(完整的選項(xiàng)列表詳見editConfigModelApi):

屬性名默認(rèn)值說明
isSilentModefalse是否為靜默模式
stopZoomGraphfalse禁止縮放畫布
stopScrollGraphfalse禁止鼠標(biāo)滾動(dòng)移動(dòng)畫布
stopMoveGraphfalse禁止拖動(dòng)畫布
  • 如下啟用了只讀的靜默模式、禁止縮放、禁止鼠標(biāo)滾動(dòng)移動(dòng)畫布、禁止拖動(dòng)畫布:
lf.value = new LogicFlow({
  container: container.value,
  isSilentMode: true, // 靜默模式
  stopZoomGraph: true, // 禁止縮放
  stopScrollGraph: true, // 禁止鼠標(biāo)滾動(dòng)移動(dòng)畫布
  stopMoveGraph: true, // 禁止拖動(dòng)畫布
})
  • 通過lf.updateEditConfig更靈活的調(diào)整:
lf.value.updateEditConfig({
	isSilentMode: false
});

總結(jié)

這一節(jié)的內(nèi)容就到此結(jié)束了,現(xiàn)在對主題、網(wǎng)格、對齊線、背景、快捷鍵和圖編輯方式都了解了嗎?這些選項(xiàng)并非是必須的,但是在需要的時(shí)候要知道怎么配置,下一節(jié)開始要著手準(zhǔn)備插件部分的學(xué)習(xí)了,加油~

以上就是vue LogicFlow更多配置選項(xiàng)詳解的詳細(xì)內(nèi)容,更多關(guān)于vue LogicFlow配置選項(xiàng)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Vue?實(shí)現(xiàn)新國標(biāo)紅綠燈效果實(shí)例詳解

    Vue?實(shí)現(xiàn)新國標(biāo)紅綠燈效果實(shí)例詳解

    這篇文章主要為大家介紹了Vue?實(shí)現(xiàn)新國標(biāo)紅綠燈效果實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • vue中使用typescript配置步驟

    vue中使用typescript配置步驟

    本文主要介紹了vue中使用typescript配置,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 詳解vue.js組件化開發(fā)實(shí)踐

    詳解vue.js組件化開發(fā)實(shí)踐

    本篇文章主要介紹了vue.js組件化開發(fā)實(shí)踐,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12
  • Element中table組件按照屬性執(zhí)行合并操作詳解

    Element中table組件按照屬性執(zhí)行合并操作詳解

    在我們?nèi)粘i_發(fā)中,表格業(yè)務(wù)基本是必不可少的,對于老手來說確實(shí)簡單,家常便飯罷了,但是對于新手小白如何最快上手搞定需求呢?本文從思路開始著手,幫你快速搞定表格
    2022-11-11
  • Vue2和Vue3的nextTick實(shí)現(xiàn)原理

    Vue2和Vue3的nextTick實(shí)現(xiàn)原理

    Vue 中的數(shù)據(jù)綁定和模板渲染都是異步的,那么如何在更新完成后執(zhí)行回調(diào)函數(shù)呢?這就需要用到 Vue 的 nextTick 方法了,本文詳細(xì)介紹了Vue2和Vue3的nextTick實(shí)現(xiàn)原理,感興趣的同學(xué)可以參考一下
    2023-04-04
  • Vue通過配置WebSocket并實(shí)現(xiàn)群聊功能

    Vue通過配置WebSocket并實(shí)現(xiàn)群聊功能

    本篇文章將與各位開發(fā)者分享下 vue-native-websocket 庫的使用以及配置,通過實(shí)例代碼給大家分享Vue通過配置WebSocket并實(shí)現(xiàn)群聊功能,需要的朋友可以參考下
    2019-12-12
  • Vue3使用hooks函數(shù)實(shí)現(xiàn)代碼復(fù)用詳解

    Vue3使用hooks函數(shù)實(shí)現(xiàn)代碼復(fù)用詳解

    這篇文章主要介紹了Vue3使用hooks函數(shù)實(shí)現(xiàn)代碼復(fù)用詳解,Vue3的hook函數(shù)可以幫助我們提高代碼的復(fù)用性,?讓我們能在不同的組件中都利用hooks函數(shù)
    2022-06-06
  • vue中對時(shí)間戳的處理方式

    vue中對時(shí)間戳的處理方式

    這篇文章主要介紹了vue中對時(shí)間戳的處理方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • vue實(shí)現(xiàn)購物車拋物線小球動(dòng)畫效果的方法詳解

    vue實(shí)現(xiàn)購物車拋物線小球動(dòng)畫效果的方法詳解

    這篇文章主要介紹了vue實(shí)現(xiàn)購物車拋物線小球動(dòng)畫效果的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了vue.js實(shí)現(xiàn)拋物線動(dòng)畫效果購物車功能相關(guān)原理與操作注意事項(xiàng),需要的朋友可以參考下
    2019-02-02
  • vue封裝自定義分頁器組件與使用方法分享

    vue封裝自定義分頁器組件與使用方法分享

    這篇文章主要給大家介紹了關(guān)于vue封裝自定義分頁器組件與使用方法的相關(guān)資料,非常的好用,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-01-01

最新評論