2021-12-08 Vue-Cli

一悯蝉、初始Vue-Cli

win

1. 安裝

win 鍵 + r 輸入 cmd
然后復(fù)制一下代碼:

npm install -g @vue/cli

OR

yarn global add @vue/cli

2.查看版本

vue --version

3.升級(jí)

npm update -g @vue/cli

或者

yarn global upgrade --latest @vue/cli

3.打開控制臺(tái)

創(chuàng)建一個(gè)項(xiàng)目:(vue create ···)
輸入npm create demo
(創(chuàng)建的名字不能是漢字或大寫字母)

創(chuàng)建項(xiàng)目完成如圖
1212122122.jpg

public : 靜態(tài)目錄一般不動(dòng)它
src : 代碼目錄 --開發(fā)目錄
打開src文件,最核心的是main.js文件
在src目錄下堪旧,App.vue文件
node_modules : 項(xiàng)目依賴
gitignore :里面存放的是在這個(gè)git倉庫中的忽略文件或目錄
babel.congig.js : (作用) Es6轉(zhuǎn)化為Es5 【有的Es6語法在瀏覽器環(huán)境是無法識(shí)別的,這時(shí)候需要去轉(zhuǎn)換】

2323232323.jpg

生產(chǎn)依賴和開發(fā)依賴

依賴1.jpg

生產(chǎn)依賴:是將來你項(xiàng)目打包的時(shí)候要參與打包
開發(fā)依賴:你在開發(fā)項(xiàng)目的時(shí)候需要依賴

package-lock.json文件可以刪除
發(fā)送項(xiàng)目給別人時(shí)祥楣,可以把node_modules刪除簿晓,(文件太大)

main.js文件

cd demo 跳轉(zhuǎn)到demo
npm run serve 再開發(fā)環(huán)境中運(yùn)行
ctrl + 鼠標(biāo)左鍵 打開預(yù)覽網(wǎng)址(Local:http://localhost:8080/

開發(fā).jpg

// 導(dǎo)入vue
import Vue from 'vue'
// 導(dǎo)入App組件
import App from './App.vue'

// 導(dǎo)入ElementUI組件庫
import ElementUI from 'element-ui';
// 導(dǎo)入ElementUI組件庫的樣式
import 'element-ui/lib/theme-chalk/index.css';
// 由于ElementUI組件庫是插件始鱼,所有必須要use
Vue.use(ElementUI);

// 不顯示生產(chǎn)提示
Vue.config.productionTip = false

// 創(chuàng)建vue實(shí)例
new Vue({
  // render是渲染函數(shù)
  render: h => h(App),
}).$mount('#app')

App.vue文件

<template>
  <div id="app">
    <h2>{{title}}</h2>
    <p>汽車信息:{{car}}</p>
    <p>飛機(jī)信息:{{planeName}}-{{planePrice}}</p>
    <!-- 3.使用組件 -->
    <Child :car="car" :planeName="planeName" :planePrice="planePrice"
    @updatePName="planeName=$event" @updatePPrice="planePrice=$event"></Child>
    <Element></Element>
    <Charts></Charts>
  </div>
</template>

<script>
// xxx.vue是vue的單文件組件
// 每個(gè)vue的單文件組件由三個(gè)部分組成:template里面放置模板內(nèi)容,script里面放置js代碼鸯旁,style里面放置樣式

// 使用組件的步驟:
// 1.導(dǎo)入組件
import Child from './components/Child.vue'
import Element from './components/ELement.vue'
import Charts from './components/Charts.vue'

export default {
  // name選項(xiàng)定義組件的名稱
  name: 'App',
  // data選項(xiàng)定義組件的數(shù)據(jù)
  data() {
    return {
      title:'歡迎學(xué)習(xí)Vue噪矛,月薪過萬不是夢',
      //定義一輛車的信息
      car:{
        name:'奔馳',
        price:'50W'
      },
      //飛機(jī)信息
      planeName:'波音747',
      planePrice:'10Y'
    }
  },
  // 2.注冊組件
  components:{
    Child,
    Element,
    Charts
  }
}
</script>

<style>
*{
  margin: 0;
  padding: 0;
  list-style: none;
}
#app {
  border: 1px solid #eee;
  margin: 10px;
  padding: 10px;
}
</style>

在components 創(chuàng)建Child.vue文件

<template>
    <div class="child">
        <h3>{{title}}</h3>
        <hr>
        <p>車名:<input type="text" v-model="car.name"></p>
        <p>車價(jià):<input type="text" v-model="car.price"></p>
        <hr>
        <p>飛機(jī)名稱:<input type="text" v-model="myPlaneName"></p>
        <p>飛機(jī)價(jià)格:<input type="text" v-model="myPlanePrice"></p>
    </div>
</template>

<script>
// 每個(gè)組件,其實(shí)就是一個(gè)導(dǎo)出的對(duì)象
export default {
    name:'Child',
    props:['car','planeName','planePrice'],
    // 注意:組件里面的data一定要是一個(gè)方法铺罢,由方法返回一個(gè)對(duì)象
    data() {
        return {
            title:'我是Child組件',
            //中轉(zhuǎn)父組件傳遞過來的值
            myPlaneName : this.planeName,
            myPlanePrice : this.planePrice
        }
    },
    watch:{
        myPlaneName(val){
            this.$emit('updatePName',val)
        },
        myPlanePrice(val){
            this.$emit('updatePPrice',val)
        }
    }
}
</script>

<style>
    .child{
        border: 1px solid red;
        padding: 10px;
    }
    hr{
        margin: 10px 0;
    }
</style>

創(chuàng)建Element.vue文件

<template>
  <div class="el">
    <h3>Element-UI組件庫</h3>
    <el-table :data="tableData" style="width: 100%">
      <el-table-column prop="date" label="日期" width="180"> </el-table-column>
      <el-table-column prop="name" label="姓名" width="180"> </el-table-column>
      <el-table-column prop="address" label="地址"> </el-table-column>
    </el-table>
    <el-pagination background layout="prev, pager, next" :total="1000">
    </el-pagination>
  </div>
</template>
<script>
export default {
  name: "Element",
  data() {
    return {
      tableData: [
        {
          date: "2016-05-02",
          name: "王小虎",
          address: "上海市普陀區(qū)金沙江路 1518 弄",
        },
        {
          date: "2016-05-04",
          name: "王小虎",
          address: "上海市普陀區(qū)金沙江路 1517 弄",
        },
        {
          date: "2016-05-01",
          name: "王小虎",
          address: "上海市普陀區(qū)金沙江路 1519 弄",
        },
        {
          date: "2016-05-03",
          name: "王小虎",
          address: "上海市普陀區(qū)金沙江路 1516 弄",
        },
      ],
    };
  },
};
</script>
<style>
.el {
  border: green solid 1px;
  padding: 10px;
  margin-top: 10px;
}
</style>

創(chuàng)建Charts.vue文件

在項(xiàng)目中使用ECharts

<template>
  <div class="charts">
    <h3>在vue項(xiàng)目中使用ECharts</h3>
    <div id="main"></div>
  </div>
</template>
<script>
// 導(dǎo)入echarts對(duì)象
import * as echarts from "echarts";

export default {
  name: "Charts",
  data() {
      return {
          list:[
              {
                  title:'襯衫',
                  xl:5,
                  kc:9
              },
              {
                  title:'羊毛衫',
                  xl:20,
                   kc:19
              },
              {
                  title:'雪紡衫',
                  xl:36,
                   kc:55
              },
              {
                  title:'褲子',
                  xl:10,
                   kc:2
              },
              {
                  title:'高跟鞋',
                  xl:10,
                   kc:5
              },
              {
                  title:'襪子',
                  xl:20,
                   kc:35
              }
          ]
      }
  },
  mounted() {
    // 基于準(zhǔn)備好的dom艇挨,初始化echarts實(shí)例
    var myChart = echarts.init(document.getElementById("main"));
    // 繪制圖表
    myChart.setOption({
      title: {
        text: "產(chǎn)品銷售信息",
        subtext:'2021-12-8'
      },
      legend:{
          
      },
      tooltip: {},
      xAxis: {
        // 獲取X軸的數(shù)據(jù)
        data: this.list.map(r=>r.title)
      },
      yAxis:{},
      // 獲取系列數(shù)據(jù) 
      series: [
        // 第一個(gè)系列顯示銷量信息
        {
          name: "銷量",
          type: "bar",
          data: this.list.map(r=>r.xl)
        }
        ,
        // 第二個(gè)系列顯示庫存信息
        {
          name: "庫存",
          type: "bar",
          data: this.list.map(r=>r.kc)
        }
      ],
    });
  },
};
</script>
<style>
.charts {
  border: 1px solid blue;
  padding: 10px;
  margin-top: 10px;
}
.charts #main {
  width: 500px;
  height: 300px;
  border: 1px solid red;
}
</style>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市畏铆,隨后出現(xiàn)的幾起案子雷袋,更是在濱河造成了極大的恐慌,老刑警劉巖辞居,帶你破解...
    沈念sama閱讀 212,542評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件楷怒,死亡現(xiàn)場離奇詭異,居然都是意外死亡瓦灶,警方通過查閱死者的電腦和手機(jī)鸠删,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來贼陶,“玉大人刃泡,你說我怎么就攤上這事巧娱。” “怎么了烘贴?”我有些...
    開封第一講書人閱讀 158,021評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵禁添,是天一觀的道長。 經(jīng)常有香客問我桨踪,道長老翘,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,682評(píng)論 1 284
  • 正文 為了忘掉前任锻离,我火速辦了婚禮铺峭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘汽纠。我一直安慰自己卫键,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,792評(píng)論 6 386
  • 文/花漫 我一把揭開白布虱朵。 她就那樣靜靜地躺著莉炉,像睡著了一般。 火紅的嫁衣襯著肌膚如雪卧秘。 梳的紋絲不亂的頭發(fā)上呢袱,一...
    開封第一講書人閱讀 49,985評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音翅敌,去河邊找鬼羞福。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蚯涮,可吹牛的內(nèi)容都是我干的治专。 我是一名探鬼主播,決...
    沈念sama閱讀 39,107評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼遭顶,長吁一口氣:“原來是場噩夢啊……” “哼张峰!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起棒旗,我...
    開封第一講書人閱讀 37,845評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤喘批,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后铣揉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體饶深,經(jīng)...
    沈念sama閱讀 44,299評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,612評(píng)論 2 327
  • 正文 我和宋清朗相戀三年逛拱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了敌厘。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,747評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡朽合,死狀恐怖俱两,靈堂內(nèi)的尸體忽然破棺而出饱狂,到底是詐尸還是另有隱情,我是刑警寧澤宪彩,帶...
    沈念sama閱讀 34,441評(píng)論 4 333
  • 正文 年R本政府宣布休讳,位于F島的核電站,受9級(jí)特大地震影響尿孔,放射性物質(zhì)發(fā)生泄漏衍腥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,072評(píng)論 3 317
  • 文/蒙蒙 一纳猫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧竹捉,春花似錦芜辕、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,828評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至憨闰,卻和暖如春状蜗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背鹉动。 一陣腳步聲響...
    開封第一講書人閱讀 32,069評(píng)論 1 267
  • 我被黑心中介騙來泰國打工轧坎, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人泽示。 一個(gè)月前我還...
    沈念sama閱讀 46,545評(píng)論 2 362
  • 正文 我出身青樓缸血,卻偏偏與公主長得像,于是被迫代替她去往敵國和親械筛。 傳聞我的和親對(duì)象是個(gè)殘疾皇子捎泻,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,658評(píng)論 2 350

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

  • 正在更新中... 聲明:所有文章都是轉(zhuǎn)載整理的,只是為了自己學(xué)習(xí),方便自己觀看,如有侵權(quán),請立即聯(lián)系我,謝謝~ V...
    是河兔兔啊閱讀 4,489評(píng)論 0 1
  • 1.todulist v-model=“value” value會(huì)自動(dòng)把輸入賦值給vue實(shí)例的字段 @click@...
    白白__qyh閱讀 90評(píng)論 0 0
  • Vue 是一套用于構(gòu)建用戶界面的漸進(jìn)式框架。 一埋哟、安裝 1.直接下載并用 標(biāo)簽引入笆豁,Vue 會(huì)被注冊為一個(gè)全局...
    張先森丫閱讀 182評(píng)論 0 1
  • 狂神說Vue筆記 想要成為真正的“互聯(lián)網(wǎng)Java全棧工程師”還有很長的一段路要走,其中前端是繞不開的一門必修課赤赊。本...
    華夏天驕閱讀 772評(píng)論 0 0
  • 一闯狱、概念介紹 Vue.js和React.js分別是目前國內(nèi)和國外最火的前端框架,框架跟類庫/插件不同砍鸠,框架是一套完...
    劉遠(yuǎn)舟閱讀 1,045評(píng)論 0 0