加载Webpack的不同模块而不是Server Script

时间:2017-01-26 03:50:47

标签: javascript node.js webpack

我能想出解释问题的最好方法是举个例子:

假设我有一个带服务器端渲染的小型单页应用程序。在客户端,新页面请求使用XHR解析,但在服务器上我想直接运行服务器端解析器。

前端的组件在数据对象上调用getter,例如:Data.page.get(),它可以轮询服务器或返回本地存储的值。所以我希望webpack打包相关的客户端代码。但我想指向服务器上的一个不同的Data对象,该对象调用服务器用来解析XHR请求的任何逻辑,无论是db调用还是文件系统调用等等。

目前我已获得var Data = require(./data)获取服务器逻辑。有没有办法告诉webpack'嘿,不要使用./data这里使用./data-client代替?或者我会以某种方式倒退这个?

这似乎是一个非常简单的概念,但我对javascript和编程一般来说还是一个新手,对于最好的方法,我有点难过。

或者我应该像webpack一样处理节点脚本:can webpack output separate script and module files for browser and node?

我目前正在使用webpack 1,但很高兴使用webpack 2来解决问题。

1 个答案:

答案 0 :(得分:0)

结果很简单。

Webpack解析具有扩展优先级的模块: 1).webpack.js 2).web.js 3).js

所以在我的情况下require('./data') will resolve to data.js with node, and so long as I have a data.web.js`它将解析为webpack中的那个。

至少我的理解。