摘要:今天在項目中發(fā)現(xiàn)了一個問題功能需求將圖表的某一列設(shè)置成公共列,或者退回私有列。這里的值就是從數(shù)據(jù)庫里面得來的,所以一開始就是正常的。這樣保證了能實時賦值并且數(shù)據(jù)庫保持同步
今天在項目中發(fā)現(xiàn)了一個問題:
1.功能需求將圖表的某一列設(shè)置成公共列,或者退回私有列。如果已經(jīng)是公共列,只出現(xiàn)“設(shè)置成私有列”,如果是私有列,只出現(xiàn)“設(shè)置成公共列”,兩個選項不能同時出現(xiàn)。(注:公共列就是每次建表格式默認出現(xiàn)這個列的所有數(shù)據(jù)。)
2.問題我在數(shù)據(jù)庫中建了一個表,用于存儲公有列信息。圖表的某一列設(shè)置成公共列時,寫入這一列的數(shù)據(jù)到表中。
將設(shè)置公共列的功能放右擊出現(xiàn)的菜單里。每次右擊時都會執(zhí)行一個函數(shù)實現(xiàn)此功能,函數(shù)中設(shè)置變量flag作為標記,flag的值從數(shù)據(jù)庫中查詢得到。
我用的是angular1.X,盡管有強大的數(shù)據(jù)綁定,但是但數(shù)據(jù)庫里的數(shù)據(jù)變化時,它也無法自動賦值更新flag變量。
這樣就出現(xiàn)了一個問題:如果不自動更新,右擊時執(zhí)行函數(shù),那么變量第一次的值仍是上一次的值(因為查詢狀態(tài)是從數(shù)據(jù)庫異步獲取然后賦值給變量),第二次的值才會正常
3.解決方案(1)頁面加載時就獲取狀態(tài)并賦值。
這里的值就是從數(shù)據(jù)庫里面得來的,所以一開始就是正常的。這樣帶來的問題是:即使用戶改變了狀態(tài),在不刷新頁面的情況下,狀態(tài)仍保持不變
(2)在前端設(shè)置變量:當(dāng)用戶改變了狀態(tài)時,在前端改變變量的值,并寫回數(shù)據(jù)庫。這樣保證了能實時賦值并且數(shù)據(jù)庫保持同步
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/86783.html
摘要:下面也是以模塊的模塊集為例,可以發(fā)現(xiàn)和路由有一些不同就是這里為了防止模塊跟全局耦合,運用函數(shù)式編程思想類似于依賴注入,將全局的實例作為函數(shù)參數(shù)傳入,再返回出一個包含的對象,這個導(dǎo)出的對象將會被以模塊名命名,合并到全局的集中。 前言 web前端發(fā)展到現(xiàn)代,已經(jīng)不再是嚴格意義上的后端MVC的V層,它越來越向類似客戶端開發(fā)的方向發(fā)展,已獨立擁有了自己的MVVM設(shè)計模型。前后端的分離也使前端人...
摘要:下面也是以模塊的模塊集為例,可以發(fā)現(xiàn)和路由有一些不同就是這里為了防止模塊跟全局耦合,運用函數(shù)式編程思想類似于依賴注入,將全局的實例作為函數(shù)參數(shù)傳入,再返回出一個包含的對象,這個導(dǎo)出的對象將會被以模塊名命名,合并到全局的集中。 前言 web前端發(fā)展到現(xiàn)代,已經(jīng)不再是嚴格意義上的后端MVC的V層,它越來越向類似客戶端開發(fā)的方向發(fā)展,已獨立擁有了自己的MVVM設(shè)計模型。前后端的分離也使前端人...
摘要:最大的好處是對用戶而言透明,可惜原因如前所述,此方案已否定。鑒于已經(jīng)在正式提案中,倘若討論持續(xù)僵持不下,不出意外將會隨著時間推移而正式成為規(guī)范。月碰頭會的與會者紛紛表示這次會議進展令人愉快,會議內(nèi)容匯總在此,以及一些補充。 說明:本文發(fā)布之后,此問題的推進峰回路轉(zhuǎn),不停有新內(nèi)容。文末新增一節(jié) Updates,跟進本文發(fā)布之后的 ES Module 標準化進展情況。 瀏覽器大戰(zhàn)多年了熱度...
閱讀 876·2021-09-26 09:55
閱讀 2158·2021-09-22 15:44
閱讀 1557·2019-08-30 15:54
閱讀 1402·2019-08-30 15:54
閱讀 2745·2019-08-29 16:57
閱讀 583·2019-08-29 16:26
閱讀 2562·2019-08-29 15:38
閱讀 2209·2019-08-26 11:48