1、什么是loadercss
loader 用于对模块的源代码进行转换。loader 可使你在 import
或"加载"模块时预处理文件。所以,loader 相似于其余构建工具中“任务(task)”,并提供了处理前端构建步骤的强大方法。loader 能够将文件从不一样的语言(如 TypeScript)转换为 JavaScript,或将内联图像转换为 data URL。loader 甚至容许你直接在 JavaScript 模块中 import
CSS文件!html
2、怎么使用loader前端
示例:加载一个less-loadervue
一、首先使用npm命令安装less-loadernode
npm install --save-dev css-loader
二、loader使用react
loader有三种方式能够引入到你的程序中webpack
(1)Configuration(配置方式):推荐使用配置方式,在你的webpack.config.js 中配置进去web
{ test: /\.less$/, use: [{ loader: "style-loader" // creates style nodes from JS strings }, { loader: "css-loader" // translates CSS into CommonJS }, { loader: "less-loader" // compiles Less to CSS }] },
(2)inline(内联方式引入):经过使用import方式引入typescript
import Styles from 'style-loader!less-loader?modules!./styles.less';
(3)cli(命令行方式引入):可使用命令的形式引入(不推荐,太麻烦)npm
webpack --module-bind jade-loader --module-bind 'css=style-loader!css-loader'
3、loaders的分类(具体用法请参考官网https://doc.webpack-china.org/loaders)
raw-loader
加载文件原始内容(utf-8)
val-loader
将代码做为模块执行,并将 exports 转为 JS 代码
url-loader
像 file loader 同样工做,但若是文件小于限制,能够返回 data URL
file-loader
将文件发送到输出文件夹,并返回(相对)URL
json-loader
加载 JSON 文件(默认包含)json5-loader
加载和转译 JSON 5 文件cson-loader
加载和转译 CSON 文件script-loader
在全局上下文中执行一次 JavaScript 文件(如在 script 标签),不须要解析babel-loader
加载 ES2015+ 代码,而后使用 Babel 转译为 ES5buble-loader
使用 Bublé 加载 ES2015+ 代码,而且将代码转译为 ES5traceur-loader
加载 ES2015+ 代码,而后使用 Traceur 转译为 ES5ts-loader
或 awesome-typescript-loader
像 JavaScript 同样加载 TypeScript 2.0+coffee-loader
像 JavaScript 同样加载 CoffeeScripthtml-loader
导出 HTML 为字符串,须要引用静态资源pug-loader
加载 Pug 模板并返回一个函数jade-loader
加载 Jade 模板并返回一个函数markdown-loader
将 Markdown 转译为 HTMLreact-markdown-loader
使用 markdown-parse parser(解析器) 将 Markdown 编译为 React 组件posthtml-loader
使用 PostHTML 加载并转换 HTML 文件handlebars-loader
将 Handlebars 转移为 HTMLmarkup-inline-loader
将内联的 SVG/MathML 文件转换为 HTML。在应用于图标字体,或将 CSS 动画应用于 SVG 时很是有用。style-loader
将模块的导出做为样式添加到 DOM 中css-loader
解析 CSS 文件后,使用 import 加载,而且返回 CSS 代码less-loader
加载和转译 LESS 文件sass-loader
加载和转译 SASS/SCSS 文件postcss-loader
使用 PostCSS 加载和转译 CSS/SSS 文件stylus-loader
加载和转译 Stylus 文件mocha-loader
使用 mocha 测试(浏览器/NodeJS)eslint-loader
PreLoader,使用 ESLint 清理代码jshint-loader
PreLoader,使用 JSHint 清理代码jscs-loader
PreLoader,使用 JSCS 检查代码样式coverjs-loader
PreLoader,使用 CoverJS 肯定测试覆盖率vue-loader
加载和转译 Vue 组件polymer-loader
使用选择预处理器(preprocessor)处理,而且 require()
相似一等模块(first-class)的 Web 组件angular2-template-loader
加载和转译 Angular 组件