Vue前后端交互

import?request?from?"@/utils/request";

export?default?{

??name:?'Home',

??components:?{

??},

??data()?{

????return?{

??????loading:?true,

??????form:?{},

??????dialogVisible:?false,

??????search:?'',

??????currentPage:?1,

??????pageSize:?10,

??????total:?0,

??????tableData:?[]

????}

??},

??created()?{

????this.load()

??},

??methods:?{

????load()?{

??????this.loading?=?true

??????request.get("/user",?{

????????params:?{

??????????pageNum:?this.currentPage,

??????????pageSize:?this.pageSize,

??????????search:?this.search

??????????//?端口返回數(shù)據(jù)進行前端渲染对扶,需要填寫參數(shù)

????????}

??????}).then(res?=>?{

????????this.loading?=?false

????????this.tableData?=?res.data.records

????????//?獲取data里面的屬性

????????this.total?=?res.data.total

??????})

????},

????//?進行模糊查詢的時候發(fā)現(xiàn)按鈕綁定點擊之后,可以查詢對應(yīng)的數(shù)據(jù)庫表汗洒,但是沒有數(shù)據(jù)可以查詢。

????//?post請求可以傳對象父款,get請求要添加params屬性溢谤。

????add()?{

??????this.dialogVisible?=?true

??????//?打開彈窗

??????this.form?=?{}

??????//?清空表單信息

????},

????save()?{

??????if?(this.form.id)?{??//?更新邏輯

??????//?判斷表單是更新還是新增

??????//?使用post發(fā)生錯誤,因為行對象存在ID憨攒,前端錯誤提示500世杀,后端錯誤提示Duplicate?entry?‘1’?for?key?‘primary’?主鍵1重復(fù)了

??????//?后臺數(shù)據(jù)庫?不適用insert插入方法使用updataById,使用put更新肝集,post更新瞻坝,get查詢

????????request.put("/user",?this.form).then(res?=>?{

??????????//?請求后臺接口?this.form參數(shù)在彈窗里面進行過綁定

??????????//?.then?ES6語法鏈式操作,前一步執(zhí)行完成杏瞻,結(jié)果放進.then里面

??????????console.log(res)

??????????//?打印返回結(jié)果

??????????//?跨域問題:參考代碼vue.config.js所刀。

??????????//?測試:F12選擇Network查看XHR發(fā)現(xiàn)Cannot?POST/user,原因是Request?URL訪問地址錯誤8080

??????????//?修改request?URL為9090后端接口提示CORS?error伐憾∶愠眨跨域限制8080端口不能訪問9090端口

??????????//?vue文檔提供解決跨域方法參考代碼vue.config.js,使用了proxy树肃,通過api改變8080端口為9876蒸矛,請求時變?yōu)?090后端接口。

??????????//?跨域配置文件完成,提示404切切地址仍然是8080雏掠,剛添加配置文件斩祭,重啟即可。重啟之后發(fā)現(xiàn)原來端口8080無法使用乡话,要選擇新的端口9876摧玫。

??????????//?完成之后查看數(shù)據(jù)庫發(fā)現(xiàn)部分數(shù)據(jù)導(dǎo)入為null,字段未對應(yīng)和屬性未添加绑青。

??????????//?密碼部分通過UserController.java诬像。如果未填寫則自動生成

??????????if?(res.code?===?'0')?{

????????????//?需要對code對象進行判斷,確認結(jié)果闸婴。

????????????this.$message({

??????????????//?ElementUi提供的彈窗提示

??????????????type:?"success",

??????????????message:?"更新成功"

????????????})

??????????}?else?{

????????????this.$message({

??????????????type:?"error",

??????????????message:?res.msg

??????????????//?返回cede錯誤信息

????????????})

??????????}

??????????//?axios數(shù)據(jù)交互

??????????this.load()?//?刷新表格的數(shù)據(jù)

??????????this.dialogVisible?=?false??//?關(guān)閉彈窗

????????})

??????}??else?{??//?新增

????????request.post("/user",?this.form).then(res?=>?{

??????????console.log(res)

??????????if?(res.code?===?'0')?{

????????????this.$message({

??????????????type:?"success",

??????????????message:?"新增成功"

????????????})

??????????}?else?{

????????????this.$message({

??????????????type:?"error",

??????????????message:?res.msg

????????????})

??????????}

??????????this.load()?//?刷新表格的數(shù)據(jù)

??????????this.dialogVisible?=?false??//?關(guān)閉彈窗

????????})

??????}

????},

????handleEdit(row)?{

??????this.form?=?JSON.parse(JSON.stringify(row))

??????//?深拷貝

??????this.dialogVisible?=?true

????},

????handleDelete(id)?{

??????console.log(id)

??????//?點擊刪除觸發(fā)功能坏挠,而不是電鋸確認才觸發(fā),因為方法寫在刪除而不是確認組件

??????//?參照官網(wǎng)Element-Plus文檔提供@confirm=

??????request.delete("/user/"?+?id).then(res?=>?{

????????if?(res.code?===?'0')?{

??????????this.$message({

????????????type:?"success",

????????????message:?"刪除成功"

??????????})

??????????//?后臺接口接收id進行刪除邪乍,后臺使用@DeleteMapping("/{{?id?}}"),使用占位符需要使用@PathVariable獲取參數(shù)降狠。

????????}?else?{

??????????this.$message({

????????????type:?"error",

????????????message:?res.msg

??????????})

????????}

????????this.load()??//?刪除之后重新加載表格的數(shù)據(jù)

??????})

????},

????handleSizeChange(pageSize)?{???//?改變當前每頁的個數(shù)觸發(fā)

??????this.pageSize?=?pageSize

??????this.load()

????},

????handleCurrentChange(pageNum)?{??//?改變當前頁碼觸發(fā)

??????this.currentPage?=?pageNum

??????this.load()

????}

??}

}

</script>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市庇楞,隨后出現(xiàn)的幾起案子榜配,更是在濱河造成了極大的恐慌,老刑警劉巖吕晌,帶你破解...
    沈念sama閱讀 217,907評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蛋褥,死亡現(xiàn)場離奇詭異,居然都是意外死亡聂使,警方通過查閱死者的電腦和手機壁拉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來柏靶,“玉大人弃理,你說我怎么就攤上這事∈候眩” “怎么了痘昌?”我有些...
    開封第一講書人閱讀 164,298評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長炬转。 經(jīng)常有香客問我辆苔,道長,這世上最難降的妖魔是什么扼劈? 我笑而不...
    開封第一講書人閱讀 58,586評論 1 293
  • 正文 為了忘掉前任驻啤,我火速辦了婚禮,結(jié)果婚禮上荐吵,老公的妹妹穿的比我還像新娘骑冗。我一直安慰自己赊瞬,他們只是感情好,可當我...
    茶點故事閱讀 67,633評論 6 392
  • 文/花漫 我一把揭開白布贼涩。 她就那樣靜靜地躺著巧涧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪遥倦。 梳的紋絲不亂的頭發(fā)上谤绳,一...
    開封第一講書人閱讀 51,488評論 1 302
  • 那天,我揣著相機與錄音袒哥,去河邊找鬼缩筛。 笑死,一個胖子當著我的面吹牛堡称,可吹牛的內(nèi)容都是我干的歪脏。 我是一名探鬼主播,決...
    沈念sama閱讀 40,275評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼粮呢,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了钞艇?” 一聲冷哼從身側(cè)響起啄寡,我...
    開封第一講書人閱讀 39,176評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎哩照,沒想到半個月后挺物,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,619評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡飘弧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,819評論 3 336
  • 正文 我和宋清朗相戀三年识藤,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片次伶。...
    茶點故事閱讀 39,932評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡痴昧,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出冠王,到底是詐尸還是另有隱情赶撰,我是刑警寧澤,帶...
    沈念sama閱讀 35,655評論 5 346
  • 正文 年R本政府宣布柱彻,位于F島的核電站豪娜,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏哟楷。R本人自食惡果不足惜瘤载,卻給世界環(huán)境...
    茶點故事閱讀 41,265評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望卖擅。 院中可真熱鬧鸣奔,春花似錦墨技、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至伟叛,卻和暖如春私痹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背统刮。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評論 1 269
  • 我被黑心中介騙來泰國打工紊遵, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人侥蒙。 一個月前我還...
    沈念sama閱讀 48,095評論 3 370
  • 正文 我出身青樓暗膜,卻偏偏與公主長得像,于是被迫代替她去往敵國和親鞭衩。 傳聞我的和親對象是個殘疾皇子学搜,可洞房花燭夜當晚...
    茶點故事閱讀 44,884評論 2 354