1. 程式人生 > >vue示例import指令學習

vue示例import指令學習

學習的原因還是起源於大牛github專案的部落格原始碼,看得我一頭霧水...

import Vue from 'vue';
import App from './App';
import router from './route';
import axios from 'axios';
import './less/index';

於是趕快上了阮一峰大牛的《ES6標準入門》這輛車,學習了:
1.專案為什麼要模組化? 2.ES6模組與CommonJS和AMD模組載入的不同。 3.export命令 4.import命令 5.模組的整體載入
  get到很多的新姿勢,然而並不能解釋import Vue from vue

和其他程式碼是什麼意思。還好,百度到三省吾身丶丶hexo部落格。幾句註釋就讓我柳暗花明。

解釋程式碼之前,先來看我的專案文件(這5行程式碼位於main.js中):

那麼現在我對上述程式碼一一作出解釋:

import Vue from 'vue';

其實最完整的寫法是:

import Vue from "../node_modules/vue/dist/vue.js";

意思是:
  因為main.js是在src檔案中,所以../向前一級相對目錄查詢node_modules,再依次尋找後面的檔案。

檔案找到了,那麼檔案內是否存在Vue呢?

  事實證明,Vue是存在於vue.js中的。

下面解釋第二條程式碼:

import App from './App';

完整的寫法是

import App from './App.vue';

顧名思義,這句程式碼的意思就是引入我們寫好的.vue檔案。(.vue檔案是vue框架的單檔案元件。)

下面解釋第三條程式碼:

import router from './route';

完整的寫法是

import router from './route.js';

顧名思義,這句程式碼的意思就是引入和main.js同級目錄下的route.js檔案。

下面解釋第四條程式碼:

import axios from 'axios';

完整意思是:

import axios from '..\node_modules\axios\dist\axios.js';

和引入vue檔案是一樣的原理,都是從node_modules中載入相應名稱的模組。

  事實證明,axios.js檔案中存在axios。

下面解釋第五條程式碼:

import './less/index';

完整意思是:

import './less/index.less';

查詢成功:


個人總結:
1.import...from...的from命令後面可以跟很多路徑格式,若只給出vue,axios這樣的包名,則會自動到node_modules中載入;若給出相對路徑及檔案字首,則到指定位置尋找。
2.可以載入各種各樣的檔案:.js、.vue、.less等等。
3.可以省略掉from直接引入。

吐槽:
  ES6的import...from...指令挺神奇,不需要指明檔案字尾,這樣很方便快捷,新手需要一定的耐心去研究,否則是真心看不懂。

作者:趁你還年輕233
連結:https://www.jianshu.com/p/c0be35475e54
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。