如何在webpack配置中运行动态代码
How to run dynamic code in webpack config
我有多个angular指令/过滤器/服务,我想在webpack中重用它们。一般来说,我想为这些文件创建一个angular模块。(总是根据某些用户输入而不同,但这不是此票据的问题)
我使用webpack从我的JS文件,而不是从webpack。配置为:
webpack({
entry: {
firstFile: path.resolve(__dirname,'../path/to/firstFile.js'),
secondFile: path.resolve(__dirname,'..//path/to/secondFile.js')
},
output: {
filename: 'bundle.js'
},
module: {
loaders: [
{
loader: 'babel-loader',
test: 'Path to file to babel',
}
]
}
}, function(err, stats) {
});
所以在这个特定的例子中,我从firstFile.js
和secondFile.js
构建bundle.js
这个创建bundle没问题,但是我漏掉了一些用来创建angular.module的代码。
应该包含如下内容:
const ngModuleName = 'myModuleName'
export default ngModuleName
const ngModule = angular.module(ngModuleName, [])
ngModule.directive('firstFile', firstFile)
ngModule.filter('secondFile', secondFile)
或者像处理静态文件一样,直接执行这类代码,不需要任何其他条目:
import firstFile from '../path/to/firstFile.js'
import secondFilefrom '../path/to/secondFile.js'
const ngModuleName = 'myModuleName'
export default ngModuleName
const ngModule = angular.module(ngModuleName, [])
ngModule.directive('firstFile', firstFile)
ngModule.filter('secondFile', secondFile)
是否有一种方法在条目内部执行?或者其他方式如何动态地将源代码添加到webpack进程中?
谢谢你的建议
我发现可以通过webpack加载器做我想做的事情。
基本上我写我自己的加载器,我使用它在webpack.config
像:
{
test: bin_dir,
loader: path.resolve(__dirname,
"./my-loader.js?"+JSON.stringify(myLoaderSettings))
},
然后在我的加载器中,我可以很容易地操作输入文件的源。在我的例子中,我在条目中添加了新的空白文件,并在源中添加了我需要的任何内容。
module.exports = function myLoader(source) {
// Source code of existing entry
console.log(source);
// Query, in my case it's result of JSON.stringify(myLoaderSettings)
console.log(this.query);
}
相关文章:
- 对动态创建的元素运行jQuery.ech()
- javascript动态内容与选择长运行脚本
- 如何添加动态Id's并在运行时提取它们
- 动态弹出窗口'通过调用一个永远运行并返回's每个周期后的数据
- 在运行时动态更改QML主题
- 具有默认运行日期值的动态生成的日期选取器
- 无法动态地将 jquery 添加到头部并运行 jquery 代码
- 在动态 html 上运行函数
- 如何动态更改由 javascript 在运行时生成的 html 的 css
- JavaScript 运行时错误:无法在 Windows 8 应用中添加动态内容
- 如何运行函数以选择动态添加
- 在通过AJAX加载的DOM中运行动态注入的javascript(尝试使用历史记录ajax化网站.js)
- 动态复选框创建以在单击时运行函数
- 如何在客户端和服务器位置都是动态时通过 TLS 运行 C# Websockets
- 在javascript之后从php加载的动态图像需要运行
- 如果我的响应在运行时更改结构,如何生成动态页面
- 如何在 Javascript 中运行存储在变量中的动态生成的函数
- 是否可以插入并运行动态脚本标记
- 如何在webpack配置中运行动态代码
- 运行动态Javascript代码