還記得當年的我們橫刀立馬,於萬軍叢中取上將首級嘛?當年YY小說可沒少看啊~,漫漫暑期,感覺有什麼在召喚我似的,經俺細細一算,原來我命中註定要在此刻造點私貨了,咳咳(-_-!!!)其實就是想自己做個小說APP,順便寫些日記充實下博客。
有兩個選擇,一個是react native,一個是weex+vue,本來想用react native,但是基於我用的linux搗鼓android studio半天沒調好,然後以前沒搞過vue,就想補補技能樹(喜新厭舊暴露無遺),那就weex吧
使用weex的第一步是安裝weex-toolkit,至於node,npm之類的就不說了,然後weex創建一個項目(weex create projectname),項目成功創建後先跑起來npm start,就能在自動打開的頁面裏看到歡迎頁面了,手機掃一下二維碼下載使用weex-playground就可以進行手機的真機調試了,weex的特點就是簡單易操作,的確給我們省了很多麻煩,只要按照官方文檔一步步來,基本不會有問題。
成功跑起來的項目類似下面的截圖(不必完全一樣,我做了修改),環境就搭建好了。
去掉歡迎頁面代碼,編寫我們自己的代碼,在src/index.vue的入口文件裏刪掉多餘的代碼留下基本框架即可:
<template>
<div>
<router-view/>
</div>
</template>
<script>
export default {
name: 'App',
data () {
return {
}
}
}
</script>
<style scoped>
</style>
index.vue是視圖文件,與之匹配的就是entry.js文件,如下:
有一些事情weex已經幫我們完成了,可以看到引入了路由和index的視圖文件,然後創建了一個視圖對象實例,路由掛到 / 路由節點,所以打開的是根路由的視圖頁面。
再看看路由文件router.js:
/* global Vue */
import Router from 'vue-router'
import Helloworld from '@/components/Helloworld'
Vue.use(Router)
module.exports = new Router({
routes: [
{path: '/',name: 'Helloworld',component: Helloworld}
]
})
憑着記憶這就是最開始weex幫我們寫好的路由,這肯定是不行的,刪除HelloWorld文件的引入(相應的文件也刪除,在components目錄裏)對路由表進行改造使其符合我們的要求:
可以看到,路由裏添加了登錄頁面,而在/掛載下嵌套的單頁應用的嵌套路由,既然有相應的路由當然也需要相應的視圖文件,改造一下目錄結構並創建相應的視圖文件:
登錄頁面先創建好基本框架放在一邊,就像index.vue類似就行,後面再去細化,我們先看MainBody:
就像它的名字,主要作用是搭建起單頁應用的基本導航架子,我們點擊下面的導航按鈕,在樣式切換的同時使用this.$router.push()
將路徑添加到路由,切換視圖。
看看最終效果,樣式的代碼嘮嘮沒意思,就省略了:
第一篇是搭起基本架子,博客是在寫好之後加的,所以節奏略快,後面想到哪裏做哪裏,就先這樣吧,未完待續