官术网_书友最值得收藏!

Reusing Node.js modules

As I mentioned earlier, there will be a step in our development process called building. During this step, our build script will take our source files and all our Node.js dependency packages and transform them into a single file that web browsers can successfully execute. The most important part of this building process is called packaging. But what do we need to package and why? Let's think about it. I briefly mentioned earlier that we're not creating a Node.js application, but yet we're talking about reusing Node.js modules. Does this mean that we'll be reusing Node.js modules in a nonNode.js application? Is that even possible? It turns out that there is a way of doing this.

Webpack is a tool used for bundling all your dependency files together in such a way that you can reuse Node.js modules in client-side JavaScript applications. You can learn more about Webpack at http://webpack.js.org. To install Webpack, run the following command from inside the ~/snapterest/ directory:

npm install --save-dev webpack

Notice the --save-dev flag. It tells npm to add Webpack to our package.json file as a development dependency. Adding a module name to our package.json file as a dependency allows us to record what dependencies we're using, and we can easily install them later with the npm install command, if needed. There is a distinction between the dependencies that are required to run your application and the ones that are required to develop your application. Webpack is used at build time, and not at runtime, so it's a development dependency. Hence, the use of the --save-dev flag. If you check the content of your package.json file now, you'll see this (don’t worry if your Webpack version doesn’t match exactly):

"devDependencies": {
  "webpack": "^2.2.1"
}

Notice that npm created a new folder in your ~/snapterest/ directory called node_modules. This is the place where it puts all your local dependency modules.

Congrats on installing your first Node.js module! Webpack will allow us to use Node.js modules in our client-side JavaScript applications. It will be a part of our build process. Now let's take a closer look at our build process.

主站蜘蛛池模板: 汤原县| 调兵山市| 石阡县| 剑川县| 中方县| 邯郸县| 嘉定区| 万盛区| 闸北区| 思茅市| 河北区| 水城县| 延吉市| 祁东县| 韶关市| 福安市| 宿州市| 方山县| 武强县| 四平市| 廊坊市| 满城县| 库尔勒市| 长阳| 吉首市| 泰兴市| 龙门县| 沈丘县| 漳州市| 肇东市| 武山县| 当雄县| 咸宁市| 长宁区| 灵武市| 淮阳县| 岳普湖县| 筠连县| 左云县| 大新县| 康保县|