vue demo1

1.開發工具

試過sublime,現在轉戰vscode,覺得很順手,總之啥工具習慣就好。
vscode用著不錯的插件,推薦安裝。
在這里插入圖片描述

2.項目目錄介紹

vue-cli生成的項目目錄有點多,初看有點懵,梳理一下會好很多。

├── index.html                      入口頁面├── build                           構建腳本目錄│   ├── build-server.js                 運行本地構建服務器,可以訪問構建后的頁面│   ├── build.js                        生產環境構建腳本│   ├── dev-client.js                   開發服務器熱重載腳本,主要用來實現開發階段的頁面自動刷新│   ├── dev-server.js                   運行本地開發服務器│   ├── utils.js                        構建相關工具方法│   ├── webpack.base.conf.js            wabpack基礎配置│   ├── webpack.dev.conf.js             wabpack開發環境配置│   └── webpack.prod.conf.js            wabpack生產環境配置├── config                          項目配置│   ├── dev.env.js                      開發環境變量│   ├── index.js                        項目配置文件│   ├── prod.env.js                     生產環境變量│   └── test.env.js                     測試環境變量├── mock                            mock數據目錄│   └── hello.js├── package.json                    npm包配置文件,里面定義了項目的npm腳本,依賴包等信息├── src                             項目源碼目錄    │   ├── main.js                         入口js文件│   ├── app.vue                         根組件│   ├── components                      公共組件目錄│   │   └── title.vue│   ├── assets                          資源目錄,這里的資源會被wabpack構建│   │   └── images│   │       └── logo.png│   ├── routes                          前端路由│   │   └── index.js│   ├── store                           應用級數據(state)│   │   └── index.js│   └── views                           頁面目錄│       ├── hello.vue│       └── notfound.vue├── static                          純靜態資源,不會被wabpack構建。└── test                            測試文件目錄(unit&e2e)└── unit                            單元測試├── index.js                        入口腳本├── karma.conf.js                   karma配置文件└── specs                           單測case目錄└── Hello.spec.js

3.前端框架依賴

為了不讓sample太蒼白,我們引入現在比較流行的MintUI(如果你覺得比較眼熟,那么恭喜你猜對了,就是餓了么前端),我不懂審美啦,但是流行的審美應該不會太丑吧。

首先安裝mint-ui

# Vue 1.x
cnpm install mint-ui@1 -S
# Vue 2.0
cnpm install mint-ui -S

然后在main.js中引入全部組件(全局導入后不用再導入)

import Vue from 'vue';
import Mint from 'mint-ui';
Vue.use(Mint);
// 按需引入部分組件
import { Cell, Checklist } from 'minu-ui';
Vue.component(Cell.name, Cell);
Vue.component(Checklist.name, Checklist);

4.搭建項目

首先配置vue router,新建init.vue做為首頁。因為是入口,所以注意path配成’/’。同理,新添的組件需要跳轉,也在這配置。
在這里插入圖片描述
這里init.vue主要由三部分組成,mt-header、mt-tab-container、mt-tabbar。

  • mt-header

這里標題綁定了selected變量,是否有點體會到vue的可愛之處。

<mt-header  fixed  :title="selected">
  • mt-tab-container
<mt-tab-container v-model="selected"><mt-tab-container-item id="首頁"><router-link to="/main" tag="li"><section >跳轉至main</section></router-link><main_content></main_content></mt-tab-container-item><mt-tab-container-item id="消息"><mt-cell title="content1" /><mt-cell title="content2" /><mt-cell title="content3" /><mt-cell title="content4" /><mt-cell title="content5" /></mt-tab-container-item><mt-tab-container-item  id="管車"><section >跳轉至car</section></mt-tab-container-item><mt-tab-container-item  id="我的"><main_content></main_content></mt-tab-container-item>
</mt-tab-container>

其中小知識點總結:
router-link:仔細看上圖在router目錄下的index.js中,有配置/main的跳轉,這里有點像html中的href。
section:<section> 標簽是 HTML5 中的新標簽,主要定義文檔區域,比如章節、頭部、底部或者文檔的其他區域。
<main_content></main_content>:這里引入了自定義組件,需要script中import進來后在 components中添加。

import MainContent from './MainContent'components: {'main_content': MainContent},
  • mt-tabbar

我們循環data中的tabs數組,取得其中的id與name,并判斷tab點擊后,tab圖片高亮。

<mt-tabbar v-model="selected" ><mt-tab-item v-for="(item, index) in tabs" :key="index" :id="item.id"><img slot="icon" :src="selected == item.id ? item.tab_img_active : item.tab_img"> {{item.name}}</mt-tab-item>
</mt-tabbar>

對應的處理代碼:

<script>
import Vue from 'vue'
import MainContent from './MainContent'
import { Header, Tabbar, TabItem, TabContainer, TabContainerItem } from 'mint-ui'
Vue.component(TabContainer.name, TabContainer)
Vue.component(TabContainerItem.name, TabContainerItem)
Vue.component(Tabbar.name, Tabbar)
Vue.component(TabItem.name, TabItem)
Vue.component(Header.name, Header)
export default {name: 'init',data () {return {selected: '首頁',msg: 'Welcome!!',tabs: [{id: '首頁',name: '首頁',active: 'false',tab_img: require('../assets/nav_home.png'),tab_img_active: require('../assets/nav_home_active.png')}, {id: '消息',name: '消息',active: 'false',tab_img: require('../assets/nav_cxl.png'),tab_img_active: require('../assets/nav_cxl_now.png')}, {id: '管車',name: '管車',active: 'false',tab_img: require('../assets/nav_car.png'),tab_img_active: require('../assets/nav_car_now.png')}, {id: '我的',name: '我的',active: 'false',tab_img: require('../assets/nav_my.png'),tab_img_active: require('../assets/nav_my_now.png')}]}},components: {'main_content': MainContent},computed: {},methods: {}
}
</script>

5.運行項目
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/249864.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/249864.shtml
英文地址,請注明出處:http://en.pswp.cn/news/249864.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

mysql日志介紹

1. 錯誤日志 錯誤日志記錄的事件&#xff1a; a. 服務器啟動關閉過程中的信息 b. 服務器運行過程中的錯誤信息 c. 事件調試器運行一個事件時間生的信息 d. 在從服務器上啟動從服務器進程時產生的信息 2. 查詢日志 查詢日志記錄查詢語句與啟動時間&#xff0c;建議不是在調試環境…

Mac OS X終端的常用操作命令(UNIX指令)

用了十多年windows&#xff0c;終于換了個高配Mac,俗話說 無論前端還是后端最終還是走向了linux&#xff0c;無論是換了多少臺PC最終都會走向Mac。不學習命令行用什么Mac? 干就完了~ pwd 顯示現在的文件路徑 &#xff08;print working directory&#xff09; ls 顯示…

索引( index )

索引在龐大的數據庫上最能體現出作用&#xff0c;所謂索引就是根據需求將指定的列提取出來做索引表&#xff0c;可以顯著提高在查找數據方面的速度。 在索引的前提下還可以指定索引值是否唯一&#xff0c;索引值是單列或是多列索引。 根據索引類型&#xff0c;索引分為&#xf…

dependencies 和 devDependencies 區別

當我們項目需要下載一個模塊的時候&#xff0c;我們安裝npm包&#xff08;在項目目錄下面npm install module_name&#xff09;的時候&#xff0c;很多時候我們會在后面加上–save-dev 或 –save。這兩個參數代表什么呢&#xff1f; 初識 相信很多人都會回答&#xff1a; np…

CentOS下防御或減輕DDoS攻擊方法(轉)

查看攻擊IP 首先使用以下代碼&#xff0c;找出攻擊者IP netstat -ntu | awk {print $5} | cut -d: -f1 | sort | uniq -c | sort -n 將會得出類似如下的結果&#xff1a; 1 114.226.9.132 1 174.129.237.157 1 58.60.118.142 1 Address 1 servers) 2 118.26.131.78 3 123.125.1…

iTerm2 快捷鍵

Ctrl a&#xff1a;將光標移動到命令行首 Ctrl e&#xff1a;將光標移動到命令行尾 Ctrl w&#xff1a;刪除光標前的一個單詞 Ctrl u&#xff1a;刪除所有內容 Ctrl y&#xff1a;粘貼上次刪除的內容 Ctrl r&#xff1a;搜索歷史命令刪除光標之前的單詞&#xff1a;ctrl …

vscode - 添加背景圖片

首先&#xff0c;CtrlShiftP安裝backround &#xff0c; 而后重啟vscode會有默認的背景圖片 修改背景圖&#xff0c;可自定義三張 具體請看gif圖 最開始時&#xff0c;發現png根本不是全透明&#xff0c;用ps處理了一下&#xff08;下列所有操作均字母組合&#xff09; 1.1 Ctr…

架構設計雜談004——架構師

什么是架構設師 架構師是&#xff1a;負責系統架構設計的人、團隊或組織 架構師主要干什么 ●架構師是技術領導&#xff0c;領導并負責架構設計&#xff0c;負責做決策 ●架構師可以是團隊或組織&#xff0c;這個時候通常會有首席架構師 ●架構師必須掌握足夠的技術知識 ●架構…

學習JS基本數據類型與對象的valueOf方法

https://blog.csdn.net/licheng11403080324/article/details/60128090 https://yq.aliyun.com/articles/399499 轉載于:https://www.cnblogs.com/smzd/p/9548530.html

security和oauth2.0的整合

security和oauth2.0的整合 之前已經介紹過security的相關的介紹,現在所需要做的就是security和oauth2.0的整合,在原有的基礎上我們加上一些相關的代碼;代碼實現如下: pom.xml: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http:…

關于Vue.use()詳解

問題 相信很多人在用Vue使用別人的組件時&#xff0c;會用到 Vue.use() 。例如&#xff1a;Vue.use(VueRouter)、Vue.use(MintUI)。但是用 axios時&#xff0c;就不需要用 Vue.use(axios)&#xff0c;就能直接使用。那這是為什么吶&#xff1f; 答案 因為 axios 沒有 install。…

百度TTS的來由

#### https://home-assistant.io/components/tts.baidu/#### https://github.com/charleyzhu/HomeAssistant_Components#### 當前使用自定義組件 https://bbs.hassbian.com/thread-1152-1-1.html#### 2018-3-15添加百度云語音識別 - platform: baidu language: zh app_i…

eslint 禁用命令

/* eslint-disable */ ESLint 在校驗的時候就會跳過后面的代碼還可以在注釋后加入詳細規則&#xff0c;這樣就能避開指定的校驗規則了/* eslint-disable no-new */常用&#xff1a; rules: {"comma-dangle": ["error", "never"], //是否允許對象…

分布式工具的一次小升級?

前言 之前在做 秒殺架構實踐 時有提到對 distributed-redis-tool 的一次小升級&#xff0c;但是沒有細說。 其實主要原因是&#xff1a; 秒殺時我做壓測&#xff1a;由于集成了這個限流組件&#xff0c;并發又比較大&#xff0c;所以導致連接、斷開 Redis 非常頻繁。 最終導致獲…

淺談vue $mount()

Vue 的$mount()為手動掛載&#xff0c;在項目中可用于延時掛載&#xff08;例如在掛載之前要進行一些其他操作、判斷等&#xff09;&#xff0c;之后要手動掛載上。new Vue時&#xff0c;el和$mount并沒有本質上的不同。 具體見代碼&#xff1a; 順便附上vue渲染機制流程圖&a…

小三角

{border-color: transparent;border-right-color: #e5e5e5;border-width: 7px;margin-top: -7px;right: 100%;top: 20px;border: solid transparent;content: " ";height: 0;width: 0;position: absolute;pointer-events: none; }轉載于:https://www.cnblogs.com/smz…

Laravel日志查看器 -- log-viewer擴展

1.修改laravel配置文件. config\app.php log>daily 2.在項目目錄中composer命令安裝擴展&#xff1a;composer require arcanedev/log-viewer 3.安裝成功后&#xff0c;需要在config\app.php 的providers陣列中注冊服務 Arcanedev\LogViewer\LogViewerServiceProvider::clas…

論一個程序員的自我修養-從一張圖片說起

故事起源 本來今天想寫.NET Core實戰之CMS系統第十五篇文章的。哈&#xff0c;奈何今天在新生命人脈群里面看到石頭哥分享的一張圖片&#xff0c;然后大家就議論了起來&#xff0c;不過我看的很懵逼&#xff0c;這圖什么意思啊&#xff1f;當一個朋友講述了這個圖片背后的故事的…

vue實例屬性之el,template,render

一、el&#xff0c;template&#xff0c;render屬性優先性 當Vue選項對象中有render渲染函數時&#xff0c;Vue構造函數將直接使用渲染函數渲染DOM樹&#xff0c;當選項對象中沒有render渲染函數時&#xff0c;Vue構造函數首先通過將template模板編譯生成渲染函數&#xff0c;然…

mysql8的坑

plugin caching_sha2_password could not be loaded 我在mac上用Sequel Pro連數據庫的時候&#xff0c;會報出以上錯誤&#xff0c;這是應為8.0.11把身份認證插件改成了 caching_sha2_password &#xff0c;而客戶端沒法使用此插件。 這是我們只要用命令行進去mysql&#xff0c…