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阅读 215,294评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,780评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,001评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,593评论 1 289
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,687评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,679评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,667评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,426评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,872评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,180评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,346评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,019评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,658评论 3 323
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,268评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,495评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,275评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,207评论 2 352

推荐阅读更多精彩内容