npm-npmscript-gulp-webpack

題目1: 如何全局安裝一個 node 應用?

   通過使用 npm install -g node應用

題目2: package.json 有什么作用?

   通過npm init命令行得到npm的配置文件,用來描述這個npm包的相關信息。
   以下自己寫的包的信息:
     {
      "name": "clcweather",   //npm包的名字
      "version": "1.0.0",     //npm包的版本號 //注意:每一次進行npm包文件的改動,version都要進行改變。
      "description": "clc創建的天氣查詢包",    //npm包的描述
      "main": "index.js",    //入口文件
      "bin": {                    //快捷命令行。在git bash中就可以使用weatherc 進行
        "weatherc": "./index.js"  //同時在index.js的開頭 要加上(開頭不要有空格) #!/usr/bin/env node
      },
      "scripts": {     //快速啟動的 //注意:test和start直接通過npm test| start 使用
                       //別的字就就只能通過npm run xxx;
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [   //關鍵字 //在npm官網中可以通過這個關鍵詞進行搜索
        "weather"
      ],
      "author": "komolei",  //作者
      "license": "ISC",   //資格
      "dependencies": {  //依賴 //因為在index.js中有用到下面的模塊。
        "axios": "^0.16.1",
        "jquery": "^3.2.1"
      }
  //  "devDependencies": {  //一般也會有這個的。用來測試的。并不讓用戶進行下載的。這個是用于生產者(開發者)
  //   "easytpl": "^1.0.4"     
  //   }
    }    //注意。在packjson.js文件中不要有注釋,要使用本配置,就要去掉所有的注釋

題目3: npm install --save app 與 npm install --save-dev app有什么區別?

~~npm install --save app是本地下載安裝 ~~
npm install --save-dev app是本地下載安裝。不過這個會在packjson.js中會生成devDenpendencies

--save 將產品運行時(或生產環境)需要的依賴模塊添加到 package.json 的 dependencies 中,在發布后還需要繼續使用,否則就運行不了。
--save-dev 將產品的開發環境需要的依賴模塊添加到 package.json 的 evDependencies 中,只在開發時才用到,發布后用不到它。

題目4: node_modules的查找路徑是怎樣的?

  逐級向上尋找,一直找到根目錄

題目5: npm3與 npm2相比有什么改進?yarn和 npm 相比有什么優勢? (選做題目)

題目6: webpack是什么?和其他同類型工具比有什么優勢?

webpack是一個為現代js應用進行打包的打包器。當webpack在處理我們的應用的時候,它會創建依賴來包含我們的應用所需要的模塊。然后這個包含我們所有模塊的包會一次性被瀏覽器所引用。

優勢:

提供commonJS語法。少了amd,cmd規范中的define(id?,[dependencies],factory),直接使用module.exports作為接口,require()來獲取。

題目7:npm script是什么?如何使用?

    通過npm init來得到package.json文件,然后里面有script,這個就是npm script
     使用:{
      "name": "clcwebpack2",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "webpack",
        "komo": "echo xixi"    
      },
      "author": "komolei",
      "license": "ISC",
      "devDependencies": {
        "webpack": "^2.5.1"
      }
    }
  先在package.json文件中配置script,然后輸入命令行npm test(其有一些關鍵字,可以就直接這樣啟動命令),
  但是對于komo而言。不是關鍵字,所以要通過npm run komo來啟動

題目8: 使用 webpack 替換 入門-任務15中模塊化使用的 requriejs

demo ##注意:要自己下載所有的demo才可以運行下載

題目9:gulp是什么?使用 gulp 實現圖片壓縮、CSS 壓縮合并、JS 壓縮合并

gulp是一款可以實現自動化的工具,能幫助你在開發過程中自動完成任務。

  var gulp = require('gulp');
  var cssnano = require('gulp-cssnano');
  var concat = require("gulp-concat");
  var jshint = require("gulp-jshint"); //在npm中會出現問題。所以使用npm install --save-dev jshint gulp-jshint這個命令行
  var clean = require('gulp-clean');
  var imagemin = require("gulp-imagemin");
  var uglify = require("gulp-uglify");
  var htmlmin = require("gulp-htmlmin");
  // var browse = require("browser-sync");
  // var sequence = require("run-sequence");

  gulp.task("css", function () {
      return gulp.src("./src/image/*.css")
          .pipe(concat("index1.css"))
          .pipe(cssnano())
          .pipe(gulp.dest("./src/dest"))
  })
  gulp.task("js", function () {
     gulp.src("./src/app/*.js")
          .pipe(jshint())
          .pipe(jshint.reporter('default'))
          .pipe(concat("index1.js"))
          .pipe(uglify())
          .pipe(gulp.dest("./src/dest/"))
  })
  gulp.task("html", function () {
      return gulp.src("./*.html")
          .pipe(htmlmin({
              collapseWhitespace: true
          }))
          // .pipe(htmlmin("index.html"))
          .pipe(gulp.dest("./src/dest"))
  })
  gulp.task("img", function() {
     return  gulp.src("./src/image/*")
          .pipe(imagemin({optimizationLevel:5}))
          // .pipe(concat())
          .pipe(gulp.dest('./src/dest/img'))
  })
  gulp.task("default", ["js", "css","img", "html"]);
  最后通過命令行:gulp,就可以直接打包弄好了。

題目10: 開發一個 node 命令行天氣應用用于查詢用戶當前所在城市的天氣,發布到 npm 上去。可以通過如下方式安裝使用(可使用api.jirengu.com里提供的查詢天氣接口) (選做題目)

npm install hunger-weather -g
weather

做了,命令行:

npm install clcweather  -g
weatherc [城市名](可選)

也開發了一個翻譯的npm

npm install komoleifanyi -g
fanyi [英文單詞] //目前只支持中譯英。

demo

求思路。怎么讓它讀出來, 我本來想調用百度語音的。但是發現并不能行。希望有人推薦一下。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,197評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,415評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,104評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,884評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,647評論 6 408
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,130評論 1 323
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,208評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,366評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,887評論 1 334
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,737評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,939評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,478評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,174評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,586評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,827評論 1 283
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,608評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,914評論 2 372

推薦閱讀更多精彩內容