基于vue-cli和豆瓣api搭建電影系統(tǒng)

系統(tǒng)分析的作業(yè)是寫一個電影購票系統(tǒng)惊畏。于是用vue2.0和豆瓣api簡單地搭建了一個購票系統(tǒng)。

前端使用vue2.0, 搭建單頁面應(yīng)用

vue提供了腳手架vue-cli密任,使用vue-cli可以快速搭建前端開發(fā)環(huán)境

npm install -g vue-cli
vue init webpack wonderWallMovie
cd wonderWallMovie
npm install

前端架構(gòu)改進(jìn):
1颜启、引入vuex管理數(shù)據(jù)流
2、引入element-ui作為前端的UI框架
3浪讳、使用sass作為前端樣式語言农曲。
4、組件化抽離

image.png

以index-page為例驻债,前端開發(fā)頁面將十分簡潔

<template lang="jade">
.index-page
  el-carousel
    el-carousel-item(v-for="item in carousels" key="item.src")
      img(:src="item.src")
  .hot-showing
    .title 正在熱映
    movielist(:data="moviesList")

</template>


<script>
import movielist from '@/components/movie-list'

let icarousels = [
  {src: require('../assets/movie-1.jpg')},
  {src: require('../assets/movie-2.jpg')},
  {src: require('../assets/movie-3.jpg')},
]
 
export default {
  data: function() {
    return {
      carousels: icarousels
    }
  },
  mounted () {
    // 獲取正在上映的列表
    this.$store.dispatch('getMovies')
  },
  components: {
    movielist
  },
  computed: {
    moviesList () {
      return this.$store.getters.moviesList.subjects
    }
  }

}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style lang="sass" scoped>
@import "../styles/pages/index-page.sass"
</style>

服務(wù)端使用java的spring-boot框架

spring-boot是非常簡單乳规,容易上手的服務(wù)端開發(fā)框架。
當(dāng)然也可以選擇nodejs合呐,python等其他語言進(jìn)行開發(fā)暮的,只要接口統(tǒng)一即可。
服務(wù)端接口使用Restful API

wonderWall 服務(wù)端接口
GET  /api/hotMovies  返回正在熱映的電影列表
GET  /api/movies        返回所有電影的列表
GET  /api/movies/:movieId  返回具體電影的信息
GET  /api/movies/:movieId/cinema  返回該電影支持上映的電影院
GET  /api/movies/:movieId/cinema/:cinemaId  返回該電影院上映該電影的所有廳次
GET  /api/movies/:movieId/cinema/:cinemaId/hall   返回該廳次的所有座位
POST  /api/movies/:movieId/cinema/:cinemaId/hall/:seatIds  生成訂單

GET  /api/movies/search?q=   搜索具體一個電影

POST  /api/login  登錄
POST  /api/logout  登出

前后端分離淌实,實(shí)現(xiàn)快速開發(fā)

由于在開發(fā)過程中服務(wù)端涉及到數(shù)據(jù)模型的抽象冻辩,數(shù)據(jù)庫的建立等等,為了保持前后端的開發(fā)速度拆祈,做了前后端分離恨闪。
ps: 服務(wù)端使用java spring-boot ,前后端分離需要服務(wù)端在服務(wù)器上穩(wěn)定運(yùn)行放坏,需要使用命令:

nohup mvn spring-boot:run & 

開發(fā)環(huán)境配置

dev: {
  env: require('./dev.env'),
  port: 8080,
  autoOpenBrowser: true,
  assetsSubDirectory: 'static',
  assetsPublicPath: '/',
  // 代理api到豆瓣
  proxyTable: {
      target: 'http://returngirl.cn:8080/',
      changeOrigin: true,
      pathRewrite: {
        // '^/api': ''
      }
    }
  }
}

服務(wù)端的程序部署在個人的騰訊云服務(wù)器上咙咽。本地開發(fā)把a(bǔ)pi代理到服務(wù)器即可。

部署 && 持續(xù)集成

生產(chǎn)環(huán)境配置
1淤年、編譯壓縮代碼钧敞,生成生成環(huán)境的代碼。

npm run build//即執(zhí)行了(node build/build.js)

vue-cli + wepback打包后生成的文件如下:

image.png

2麸粮、配置服務(wù)器的nginx指向index.html
3溉苛、配置nginx實(shí)現(xiàn)前后端分離

image.png

持續(xù)集成
持續(xù)集成使用web-hook(以github為例)

image.png

然后使用nodejs編寫web-hook程序,使用Pm2管理進(jìn)程. (web-hook同時也監(jiān)聽了我個人日志的更新)

image.png

后期持續(xù)集成考慮專用gitlab runner.

成果

http://returngirl.cn:8000

image.png

項(xiàng)目代碼地址:

https://gitlab.com/returnGirl/vue-movie

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市弄诲,隨后出現(xiàn)的幾起案子吼句,更是在濱河造成了極大的恐慌劫扒,老刑警劉巖性湿,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件澳骤,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來佑淀,“玉大人,你說我怎么就攤上這事彰檬∩烊校” “怎么了?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵逢倍,是天一觀的道長捧颅。 經(jīng)常有香客問我,道長较雕,這世上最難降的妖魔是什么碉哑? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮亮蒋,結(jié)果婚禮上扣典,老公的妹妹穿的比我還像新娘。我一直安慰自己慎玖,他們只是感情好贮尖,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著趁怔,像睡著了一般湿硝。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上润努,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天关斜,我揣著相機(jī)與錄音,去河邊找鬼铺浇。 笑死痢畜,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的随抠。 我是一名探鬼主播裁着,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼拱她!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起扔罪,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤秉沼,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體唬复,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡矗积,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了敞咧。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片棘捣。...
    茶點(diǎn)故事閱讀 38,789評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖休建,靈堂內(nèi)的尸體忽然破棺而出乍恐,到底是詐尸還是另有隱情,我是刑警寧澤测砂,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布茵烈,位于F島的核電站,受9級特大地震影響砌些,放射性物質(zhì)發(fā)生泄漏呜投。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一存璃、第九天 我趴在偏房一處隱蔽的房頂上張望仑荐。 院中可真熱鬧,春花似錦纵东、人聲如沸粘招。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽男图。三九已至,卻和暖如春甜橱,著一層夾襖步出監(jiān)牢的瞬間逊笆,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工岂傲, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留难裆,地道東北人。 一個月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓镊掖,卻偏偏與公主長得像乃戈,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子亩进,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評論 2 351

推薦閱讀更多精彩內(nèi)容