摘要:在中引入的問(wèn)題,之前在網(wǎng)上搜了很多,都沒(méi)有給出一個(gè)確切的答案,搗鼓了兩天終于弄明白了,做個(gè)記錄。通過(guò)這樣引入還不夠,可能會(huì)遇到圖可以正常加載,但無(wú)法拖拽的問(wèn)題,遇到這些問(wèn)題一般是和自己項(xiàng)目中的環(huán)境沖突了,導(dǎo)致無(wú)法讀取或者讀取錯(cuò)誤。
在vue中引入joint.js的問(wèn)題,之前在網(wǎng)上搜了很多,都沒(méi)有給出一個(gè)確切的答案,搗鼓了兩天終于弄明白了,做個(gè)記錄。
首先,我參考了一篇來(lái)自stackoverflow的文章點(diǎn)我點(diǎn)我
看完這篇文章,大家應(yīng)該至少大致怎么做了,下面我們來(lái)具體看一下:
首先在vue項(xiàng)目中運(yùn)行npm install jointjs --save
然后在入口文件,我的是main.js,也有可能是app.js中加入下面兩行,把joint.js和jquery作為全局變量
window.$ = require("jquery");
window.joint = require("jointjs");
這里需要注意的是,joint.js依賴backbone、jquery和lodash,在通過(guò)script方式引入時(shí),需要一一引入這些文件,但通過(guò)vue的npm時(shí)不需要,npm引入的joint.js已經(jīng)默認(rèn)封裝好了這些。
通過(guò)這樣引入還不夠,可能會(huì)遇到圖可以正常加載,但無(wú)法拖拽的問(wèn)題,遇到這些問(wèn)題一般是joint.js和自己vue項(xiàng)目中的環(huán)境沖突了,導(dǎo)致無(wú)法讀取或者讀取錯(cuò)誤。
我原來(lái)的項(xiàng)目中安裝了element、iview、axios、vuex、jquery,再安裝joint.js后,jointjs無(wú)法正常加載,后來(lái)重新建了一個(gè)項(xiàng)目,只安裝了element、axios、vuex,為避免jquery和joint.js中的jquery沖突,后來(lái)沒(méi)有裝jquery。
這樣就行了么?就可以運(yùn)行上文鏈接中的例子了么?像這樣:
Home
NoNoNo,注意到這里是把渲染放在了created的生命周期里,根據(jù)vue的生命周期,是無(wú)法找到j(luò)oint的掛載div的el: $("#myholder"),也就是說(shuō),運(yùn)行會(huì)報(bào)錯(cuò),我的解決方法是把div放了一個(gè)click,把joint的內(nèi)容從created中拿出,放在methods中,需要點(diǎn)擊一下才可顯示哦,還不太完美,以待改進(jìn)(~ ̄▽ ̄)~
也就是說(shuō),代碼會(huì)變成這樣:
點(diǎn)明一下,通過(guò)npm引入只要install jointjs就可以,不需要install lodash、backbone、jquery,也不需要在頁(yè)面中導(dǎo)入joint.css文件。筆者之前通過(guò)script方式引入joint.js,試了很多次,都沒(méi)有成功,一直讀取joint.js文件出錯(cuò),如果其他小伙伴嘗試成功,歡迎交流分享。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/115851.html
摘要:在中引入的問(wèn)題,之前在網(wǎng)上搜了很多,都沒(méi)有給出一個(gè)確切的答案,搗鼓了兩天終于弄明白了,做個(gè)記錄。通過(guò)這樣引入還不夠,可能會(huì)遇到圖可以正常加載,但無(wú)法拖拽的問(wèn)題,遇到這些問(wèn)題一般是和自己項(xiàng)目中的環(huán)境沖突了,導(dǎo)致無(wú)法讀取或者讀取錯(cuò)誤。 在vue中引入joint.js的問(wèn)題,之前在網(wǎng)上搜了很多,都沒(méi)有給出一個(gè)確切的答案,搗鼓了兩天終于弄明白了,做個(gè)記錄。首先,我參考了一篇來(lái)自stackove...
摘要:由于是基于的,因此對(duì)有一定的了解會(huì)對(duì)的理解和使用有較大幫助。由于是基于的,因此有視圖和模型的概念。掛載的元素關(guān)聯(lián)聲明的元素的概念,就是圖形顯示的主體,可以有各種不同的形狀,預(yù)設(shè)有常用的矩形橢圓平行四邊形等。 一、jointJS簡(jiǎn)介 jointJS是一個(gè)基于svg的圖形化工具庫(kù),在畫布上畫出支持拖動(dòng)的svg圖形,而且可以導(dǎo)出JSON,也能通過(guò)JSON配置導(dǎo)入直接生成圖形。 可以基于joi...
摘要:最近由于項(xiàng)目需要,開(kāi)始接觸,妥妥不停刷文檔模式,先寫一下對(duì)于的粗淺認(rèn)識(shí)吧。我們可以使用已提供的圖元素繪圖,也可根據(jù)需求自定義一些圖元素。另外,它極易上手且操作簡(jiǎn)單,并且支持所有的現(xiàn)代瀏覽器。 最近由于項(xiàng)目需要,開(kāi)始接觸jointJS,妥妥不停刷文檔模式,先寫一下對(duì)于jointjs的粗淺認(rèn)識(shí)吧。 我們可以使用JointJS已提供的圖元素繪圖,也可根據(jù)需求自定義一些圖元素。除此之外,Joi...
摘要:在該模式下,所有的和會(huì)多一個(gè)屬性,就行中的陰影有一個(gè)屬性表示層級(jí)。為了控制哪些元素可以,需要配置。如果允許被潛入到,返回默認(rèn)所有元素都可以到其他元素中當(dāng)設(shè)置為的時(shí)候,用戶將不能將移動(dòng)到邊界之外。 關(guān)于JointJs的介紹,有一篇比較好JointJS介紹 第一個(gè)類Paperjoint.dia.Paper 屬性 el css選擇器,Paper將在該Css選擇的Container下畫SV...
閱讀 2073·2021-11-15 17:57
閱讀 738·2021-11-11 16:54
閱讀 2588·2021-09-27 13:58
閱讀 4066·2021-09-06 15:00
閱讀 950·2021-09-04 16:45
閱讀 3505·2019-08-30 15:56
閱讀 1783·2019-08-30 15:53
閱讀 1603·2019-08-30 14:12