plugins

  plugins: [
new HtmlWebpackPlugin({ // 使用模板同时生成 pc.html和mobile.html
title: 'pc',
filename: 'pc.html',
hash: true,
template: path.resolve(__dirname, '../src/template.html'),
chunks: ['pc'] // 只注入pc.js
}),
new HtmlWebpackPlugin({
title: 'mobile',
hash: true,
filename: 'mobile.html',
template: path.resolve(__dirname, '../src/template.html'),
chunks: ['mobile'] // 只注入mobile.js
}),
]

webpack-dev-server

devServer: {
historyApiFallback: {
rewrites: [
{
from: /.*/, // 让request url 重写,这儿默认是请求html文件会运行to方法。
to(ctx) {
if (isMoble(ctx.request.get('user-agent'))) { // 获取请求客服端信息,如果是mobile,重定向到mobile.html。
console.log('mobile')
return '/mobile.html' // 若为手机端,地址改为mobile.html
} else {
console.log('pc') // 若为pc端,地址改为pc.html
return '/pc.html'
}
}
}
]
},
}

webpack 构建同时适用于手机和电脑的调试服务器的更多相关文章

  1. 自定义适用于手机和平板电脑的 Dynamics 365(五):可视控件

    使用 适用于手机的 Dynamics 365 和平板电脑中的可视控件帮助移动用户更快地输入 Dynamics 365 数据并提供更丰富的可视体验. 此组自定义控件包括滑块.开关.星数评级.视频嵌入以及 ...

  2. 自定义适用于手机和平板电脑的 Dynamics 365(四):窗体脚本

    为 Web 应用程序中使用的窗体编写的脚本也应该适用于用于手机和平板电脑的 Dynamics 365,但存在一些差异. 通常,对于移动应用程序无效的方法不返回错误,但是它们也不返回任何值. 开发人员可 ...

  3. 自定义适用于手机和平板电脑的 Dynamics 365(三):显示的实体

    您可以启用 适用于手机的 Dynamics 365 和 适用于平板电脑的 Dynamics 365 的有限实体集. 若要查看是否启用了实体,或者要启用实体,请单击“设置”>“自定义”>“自 ...

  4. 自定义适用于手机和平板电脑的 Dynamics 365(二):窗体自定义项

    适用于手机的 Dynamics 365 和 适用于平板电脑的 Dynamics 365 使用窗体作为 Web 应用. 窗体在应用程序中的显示方式为移动体验进行了优化. 下图显示了从 Web 应用程序到 ...

  5. 自定义适用于手机和平板电脑的 Dynamics 365(一):主页

    当用户首次打开适用于手机和平板电脑的 Dynamics 365 时,他们将看到默认为“销售仪表板”的主页. 您可以创建新仪表板或 Web 应用程序中编辑现有仪表板,然后为移动设备启用它们,用户可以选择 ...

  6. 使用webstorm+webpack构建简单入门级“HelloWorld”的应用&&引用jquery来实现alert

    使用webstorm+webpack构建简单入门级"HelloWorld"的应用&&构建使用jquery来实现 1.首先你自己把webstorm安装完成. 请参考这 ...

  7. webpack构建具备版本管理能力的项目

    webpack是时下十分流行的编译和打包工具,它提供一种可扩展的loader的方式,简单的配置,便可以编译打包各类型的文件,包括js.css.image.font.html,以及各种预编译语言都不在话 ...

  8. 深入浅出的webpack构建工具---webpack基本配置(一)

    深入浅出的webpack构建工具---webpack基本配置(一) 阅读目录 一:webpack入门构建: 1. 安装webpack到全局 2. 安装webpack到本项目. 3. 如何使用webpa ...

  9. 用gulp+webpack构建多页应用——记一次Node多页应用的构建过程

    通过参考网上的一些构建方法,当然也在开发过程中进行了一番实践,最终搭建了一套适用于当前多页应用的构建方案,当然该方案还处于draft版本,会在后续的演进过程中不断的优化. 个人觉得该方案的演进过程相对 ...

随机推荐

  1. JavaScript if(x),==和===解析(翻译整理)

    一.if()中的布尔判断 if ( Expression ) 表达式会通过ES5定义的ToBoolean方法强制把Expression 转换成布尔值. 数据类型 转换结果 Undefined fals ...

  2. Oracle学习操作(6)函数与存储过程

    一.oracle自定义函数 1.不带参数的函数: 返回t_book表的总条数: SQL> create function getBookCount return number as begin ...

  3. 1034 Head of a Gang (30 分)

    1034 Head of a Gang (30 分) One way that the police finds the head of a gang is to check people's pho ...

  4. ajax异步、同步问题,KindEditor ajax提交内容,ajax提交form表单 解决按两次的问题

    版权声明:本文为博主原创文章,未经博主允许不得转载. 如果ajax不采用异步,整个js代码在服务器返回结果前都将阻塞,alert方法除外 lookUp('lookUp','',100,300,3); ...

  5. mono部分源码解析

    一.源码结构 这里仅列举几个重要的目录:mcs:    mcs: Mono实现的基于Ecma标准的C#编译器.    class: CLI的C#级的实现.类似于Android中的Java层,应用程序看 ...

  6. Python 基础 json 与pickle

    json 支持:    str,int,tuple,list,dictpickle    支持python里所有的数据类型(包括函数)    只能在python中使用 json 与pickle 是一种 ...

  7. linux 下各个4K区块文件大小测试速度对比 机械硬盘性能 64K性价比收益最高

    机械硬盘,每个区块取三次数最小值为准,带2G RAM缓存卡 4K3.4 MB/秒 8K7.3 MB/秒 16K9.5 MB/秒 32K16.7 MB/秒 64K44.2 MB/秒 128K67.1 M ...

  8. Spring 学习之AOP

    1. 走进面前切面编程 编程范式: 面向过程编程,c语言: 面向对象编程:c++,java,c#; 函数式编程: 事件驱动编程: 面向切面编程: AOP是一种编程范式,不是编程语言:解决特定问题,不能 ...

  9. 解决问题E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)

    在用sudo apt-get install 安装软件时,结果终端提示: “E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) E: 无法锁定管理目录(/ ...

  10. UVA-575-水题-模拟

    题意: 按照这个公式模拟 10120skew = 1×(25 −1)+0×(24 −1)+1×(23 −1)+2×(22 −1)+0×(21 −1) = 31+0+7+6+0 = 44. #inclu ...