博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webpack 编译模板文件
阅读量:5937 次
发布时间:2019-06-19

本文共 3857 字,大约阅读时间需要 12 分钟。

1、项目结构

 

安装loader:

npm i html-loader --save-devnpm i ejs-loader --save-dev

 

 

2、模板文件layer.tpl

this is <%= name %> layer
<% for (var i = 0;i < arr.length; i++) { %> <%= arr[i] %> <% } %>

 

3、layer.js

import './layer.less';//import tpl from './layer.html';import tpl from './layer.tpl';function Layer(){    return {        name:'layer',        tpl:tpl    }}export default Layer;

 

4、app.js

import  './css/common.css';import layer from './components/layer/layer.js'const App = function(){    var dom= document.getElementById('app');    var Layer = new layer();    dom.innerHTML = Layer.tpl({        name:'john',        arr:['apple','xiaomi','oppo']    });}new App()

注意:

Layer.tpl是函数。

 

5、webpack.config.js

var htmlWebpackPlugin = require('html-webpack-plugin');module.exports = {    entry: './src/app.js',    output: {        path: __dirname + '/dist',        filename: 'js/[name].js'    },    module: {        loaders: [{                test: /\.js$/,                //以下目录不处理                exclude: /node_modules/,                //只处理以下目录                include: /src/,                loader: "babel-loader",                //配置的目标运行环境(environment)自动启用需要的 babel 插件                query: {                    presets: ['latest']                }            },            //css 处理这一块            {                test: /\.css$/,                use: [                    'style-loader',                    {                        loader: 'css-loader',                        options: {                            //支持@important引入css                            importLoaders: 1                        }                    },                    {                        loader: 'postcss-loader',                        options: {                            plugins: function() {                                return [                                    //一定要写在require("autoprefixer")前面,否则require("autoprefixer")无效                                    require('postcss-import')(),                                    require("autoprefixer")({                                        "browsers": ["Android >= 4.1", "iOS >= 7.0", "ie >= 8"]                                    })                                ]                            }                        }                    }                ]            },            //less 处理这一块            {                test: /\.less$/,                use: ['style-loader',                    {                        loader: 'css-loader',                        options: {                            //支持@important引入css                            importLoaders: 1                        }                    },                    {                        loader: 'postcss-loader',                        options: {                            plugins: function() {                                return [                                    //一定要写在require("autoprefixer")前面,否则require("autoprefixer")无效                                    require('postcss-import')(),                                    require("autoprefixer")({                                        "browsers": ["Android >= 4.1", "iOS >= 7.0", "ie >= 8"]                                    })                                ]                            }                        }                    },                    'less-loader'                ]            },            //处理html模板            {                test: /\.html$/,                use: {                    loader: 'html-loader'                }            },            //处理tpl模板            {                 test: /\.tpl$/,                 loader: 'ejs-loader'             },        ]    },    plugins: [        new htmlWebpackPlugin({            template: 'index.html',            filename: 'index.html'        })    ]}

 

6、编译

npm run webpack

 

7、结果

 

转载地址:http://pvvtx.baihongyu.com/

你可能感兴趣的文章
day18 Set集合
查看>>
Oracle event之db file read
查看>>
ORA 00600 [ktrexc_1]
查看>>
Docker 安装
查看>>
查询文件系统容量与每个目录的容量
查看>>
如何确定一个网站是用Wordpress开发的
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
wdcp 安装
查看>>
C语言运算符优先级相关问题
查看>>
MP4视频播放器代码
查看>>
Nginx 匹配 iphone Android 微信
查看>>
ldap
查看>>
我的友情链接
查看>>
Yum软件仓库配置
查看>>
linux 压缩与解压总结
查看>>
mysql脚本1064 - You have an error in your SQL syntax; check the manual
查看>>
nessus 本地扫描(一)
查看>>
linux服务器磁盘陈列
查看>>
交换机配置模式
查看>>