1. 创建一个文件夹。
  2. 打开命令行或者powershell, 运行npm init,根据提示填入package的信息。
  3. 在文件夹中创建index.js文件。

/*!

* mymongolib

* Copyright(c) 2009-2013 Blabla

* MIT Licensed

*/

 

'use strict';

 

module.exports = require('./lib/mymongolib');

 

  1. 在文件夹中创建lib目录,然后在新目录中创建mymongolib.js文件。

'use strict'

 

function MyMonboLib(connStr)

{

this.ConnStr = connStr;

 

this.TestConn = function()

{

return
true;

}

 

this.DeleteOneDoc(collName, _id)

{

return
true;

}

 

}

 

module.exports = MyMongoLib;

 

  1. 回到项目的根目录文件夹,然后里面创建Gruntfile.js文件。

module.exports = function(grunt) {

 

// Project configuration.

grunt.initConfig({

pkg: grunt.file.readJSON('package.json'),

uglify: {

options: {

banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'

},

build: {

src: ['lib/<%= pkg.name %>.js'],

dest: 'dist/<%= pkg.name %>.js'

}

}

});

 

// Load the plugin that provides the "uglify" task.

grunt.loadNpmTasks('grunt-contrib-uglify');

 

// Default task(s).

grunt.registerTask('default', ['uglify']);

 

};

 

  1. 在命令行或者PowerShell中安装grunt.

npm install grunt --save-dev

 

  1. 在命令行或者PowerShell中安装grunt-contrib-uglify模块。

npm install grunt-contrib-uglify --save-dev

 

  1. 在命令行或者PowerShell中执行grunt命令。

grunt

 

结果如下:

Running "uglify:build" (uglify) task

>> 1 file created 265 B → 193 B

 

此时看到项目的根目录下,自动创建了一个dist文件夹,里面自动创建了一个mymongolib.js文件, 文件内容如下:

/*! mymongolib 2017-11-07 */

 

"use strict";function MyMonboLib(n){return
this.ConnStr=n,this.TestConn=function(){return!0},this.DeleteOneDoc(collName,_id),!0}module.exports=MyMongoLib;

 

大功告成!

 

 

 

附录1:

当然,如果只想对一个js文件执行grunt操作,就不需要创建index.js和lib文件夹里面的文件,直接将文件放在根目录,然后将GruntFile.js文件中的路径改一下就好了。

 

附录2:

如何创建一个 示例 GruntFile.

  1. 安装grunt-cli

npm install -g grunt-cli

 

  1. 安装windows版本的git.
  2. 建立一个空文件夹。
  3. 从命令行或者PowerShell中定位到新文件夹,然后从github上下载模板。

git clone https://github.com/gruntjs/grunt-init-gruntfile.git ~/.grunt-init/gruntfile

 

  1. 创建 sample Docker file.
grunt-init gruntfile

 

这个命令会给出提示:

Please answer the following:

[?] Is the DOM involved in ANY way? (Y/n) n

[?] Will files be concatenated or minified? (Y/n) y

[?] Will you have a package.json file? (Y/n) y

[?] Do you need to make any changes to the above before continuing? (y/N) n

 

Writing Gruntfile.js...OK

Writing package.json...OK

 

Initialized from template "gruntfile".

 

这样,在文件夹中就有了对应的GruntFile.js和package.json文件,可以用来做样例或者从中复制粘贴一些代码用。

例子:使用Grunt创建一个Node.js类库的更多相关文章

  1. 如何快速搭建一个 Node.JS 项目并进入开发?

    了解:如何快速搭建一个项目并进入开发? 在此不概述 Node.JS 的历史以及发展过程. 因为之前接触过通过 Java 开发语言,所以明确地知道一个服务器所需的文件,以及一个服务器所需要的操作. 那么 ...

  2. 开启第一个Node.js的Express项目

    手动创建一个Express.js的应用可大致分为以下步骤: 1.创建文件夹 a. 创建一个项目根文件夹,如helloWord b.在项目的根目录下创建项目的目录结构,依次创建{public,publi ...

  3. 如何用Docker建立一个Node.js的开发环境

      建立一个文件夹 用管理员身份打开powershell. 在文件夹下面运行npm init, 根据提示填入信息,以便产生一个package.json文件. 在文件中加入需要的dependencies ...

  4. 3.第一个Node.js程序:Hello World!

    转自:http://www.runoob.com/nodejs/nodejs-tutorial.html 以下是我们的第一个Node.js程序: console.log("Hello Wor ...

  5. 建立一个node.js服务器(使用express搭建第一个Web环境)

    一.官网下载node.js 下载地址:https://nodejs.org/en/download/ 根据向导,下一步安装就可以了! 二.使用express搭建Web环境 express是一个开源的n ...

  6. 运行第一个Node.js程序

    初学Node.js,萌新一枚.感觉Node.js挺不错的,从基础开始一步一步来,加油吧! 我们来使用Node.js的express来运行第一个程序helloworld: 在命令提示符键入express ...

  7. 指令创建 Express Node.js 项目

    1.安装 Express 1.1 安装 Express 框架 首先保证已经安装过了 Node.js,然后进入终端使用管理员身份来安装 Express 框架. # 安装 express $ sudo n ...

  8. 一个node.js图片上传显示小应用

    文件结构如下: 实现的功能有: 可以通过浏览器使用. 当请求http://domain/start时,可以看到一个欢迎页面,页面上有一个文件上传的表单. 用户可以选择一个图片并提交表单,随后文件将被上 ...

  9. node.js03 第一个node.js程序和读取文件

    Hello World 1.创建运行 创建txt文件起名为hellonode,在记事本中编写JavaScript脚本文件 例如: var bbl = 'hellonode' console.log(b ...

随机推荐

  1. POJ 1741 Tree (树分治入门)

    Tree Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 8554   Accepted: 2545 Description ...

  2. Java-JVM-GC

    http://www.cnblogs.com/zhguang/p/Java-JVM-GC.html

  3. Revit API改变风管及管件尺寸

    start , , )) < , , -)) < , dHeight = ;             ConnectorSetIterator csi = fi.MEPModel.Conn ...

  4. EF6+Sqlite连接字符串的动态设置

    摘要 在winform中应用sqlite和ef,对于sqlite连接字串的设置,大多情况下是不想写死了,你不知道用户会将你的exe程序安装在什么位置,也不知道他的电脑盘符是什么,如果写死了,那么很有可 ...

  5. Unity3D实践系列06,球体撞击物体游戏

    本篇实现一个球体在固定区域移动撞击Cube的游戏. 首先有1个Plane当作地面,1个Sphere当作球体,4个Cube当作墙,12个Cube当作被撞击物体,另外还有球体的撞击计算,在撞击的过程适时显 ...

  6. 在CentOS4上安装JMagick

    用Java做网站经常要处理用户上传的图片,例如生成缩略图等等.虽然Java可以使用Java2D进行一些图片操作,但是功能和效率实在太差了. 目前比较好的是用JMagick来进行图像处理,不过JMagi ...

  7. Fidder发送Get、POST请求

      Composer:   1.Get请求 a) 请求头加上: Content-Type: application/json; charset=utf-8   b) url:http://localh ...

  8. Linux内核学习笔记之seq_file接口创建可读写proc文件

    转自:http://blog.csdn.net/mumufan05/article/details/45803219 学习笔记与个人理解,如有错误,欢迎指正. 温馨提示:建议跟着注释中的编号顺序阅读代 ...

  9. SharePoint Online 创建列表库

    前言 本文介绍如何在Office 365中创建列表库,以及列表库的一些基本设置. 正文 通过登录地址登录到Office 365的SharePoint Online站点中,我们可以在右上角的设置菜单中, ...

  10. linux设置允许和禁止访问的IP host.allow 和 host.deny

    对于能过xinetd程序启动的网络服务,比如ftp telnet,我们就可以修改/etc/hosts.allow和/etc/hosts.deny的配制,来许可或者拒绝哪些IP.主机.用户可以访问. 比 ...