wpf版的客戶端已經能很好的跑起來后給,該開發web端了,想想以前用過mvc5 + avalon + amd加載,后面玩過angular1 + web api,現在想着該最新的了
於是開始了血淚史
1,angular8
我們的界面基本上就是點菜單加一個tab,而不同的tab之間要能夠流暢的切換,並且只能用顯示隱藏來切換,后面會說原因
用了一個組件 ndc-dynamic 來動態加載組件,不錯,終於能把界面搭起來了
然后發現ng8不支持中文名來綁定, 我們行業很多變量從plc出來的,那邊的人基本都是中文命名,不管用哪種辦法轉英文都會帶來麻煩,絕對不行
2, vue2.0 + typescript
vue和ts的組合網上找資料還有點難,好不容易成型了,開始測試chart組件的性能
https://www.cnblogs.com/gxrsprite/p/12160032.html
然后發現,chrome的64位版本 加上 --args --js-flags="--max_old_space_size=4096"屬性,js最多也就給2g內存用,並且界面非常卡頓,而我們擅長的就是八聯罐,跑十幾天的數據,最后客戶全部一起看,這個操作wpf完全扛得住還非常流暢,web端echart highchart,一個就卡的快受不了了,echart多個直接爆內存,這個數據量用v-show切換都開始卡了,更別說什么router-view了,那玩意不需要這么大數據切起來就很慢了
但是我想單頁面不可能了,要不就新建窗口傳參,在通過識別url動態增加tab,這樣就分配到不同進程上去了,不至於一口氣崩潰,雖然一個頁面也承載不了所需要的chart量。
然后又被webpack虐了,配了半天就是個麻煩版本的bundle,我想要配置成amd加載這種按需延遲加載的,配不成,也不方便,合着前端從各種require到各種import一路下來,基本上沒進步嘛。
結尾: 使用a標簽右鍵新開頁面,新開的頁面利用路由識別,添加tab頁,完成在新窗口打開動作,使用單頁開發模式開發了多頁模式