有谁知道如何在webpack.config.js文件中创建多个输出路径?我正在使用bootstrap-sass,它带有一些不同的字体文件等.对于webpack来处理这些我已经包含的文件加载器,它正常工作,但它输出的文件被保存到我指定的输出路径其余的文件:
output: {
path: __dirname + "/js",
filename: "scripts.min.js"
}
Run Code Online (Sandbox Code Playgroud)
我希望能够实现一些东西,我可以查看任何webpack输出的扩展类型以及以.woff .eot等结尾的内容,将它们转移到不同的输出路径.这可能吗?
我做了一些谷歌搜索,并在github上遇到了这个问题,提供了几个解决方案,编辑:
但看起来你需要知道能够使用哈希方法指定输出的入口点,例如:
var entryPointsPathPrefix = './src/javascripts/pages';
var WebpackConfig = {
entry : {
a: entryPointsPathPrefix + '/a.jsx',
b: entryPointsPathPrefix + '/b.jsx',
c: entryPointsPathPrefix + '/c.jsx',
d: entryPointsPathPrefix + '/d.jsx'
},
// send to distribution
output: {
path: './dist/js',
filename: '[name].js'
}
}
Run Code Online (Sandbox Code Playgroud)
*https://github.com/webpack/webpack/issues/1189
但就我而言,就字体文件而言,输入过程是抽象的,我所知道的就是输出.在我的其他文件正在进行转换的情况下,有一个已知点,我要求它们然后由我的加载器处理.如果有办法找出这一步发生的地方,我可以使用哈希方法来自定义输出路径,但我不知道这些文件的位置.
我已下载applicationloader_1.3.dmg并安装在目标Macintosh HD中.
消息显示安装已成功完成.但是,ApplicationLoader应用程序不会出现在任何地方.
如何在Application->Utility文件夹中安装和获取Applicationloader应用程序?
我正在使用Mac OSX版本10.6.8.
我想深入了解编译器,链接器和加载器的意义和工作.参考任何语言,最好是c ++.
我注意到使用Android Loaders和Fragments的奇怪情况.当我调整方向更改onLoadFinished后调用LoaderManager.initLoader()时(尽管文档建议我应该为此做好准备),但在此之后调用它两次.以下链接指向相同情况的Google群组中的帖子https://groups.google.com/forum/?fromgroups#!topic/android-developers/aA2vHYxSskU.我编写了示例应用程序,其中我只在Fragment.onActivityCreated()中初始化简单的Loader来检查是否会发生这种情况.有人注意到了吗?
作为链接器输入的文件称为对象文件.链接器生成一个Image文件,该文件又被加载器用作输入.
来自" Microsoft可移植可执行文件和通用对象文件格式规范 "的模糊
RVA(相对虚拟地址).在图像文件中,将项目的地址加载到内存后,从中减去图像文件的基地址.项目的RVA几乎总是与其在磁盘上的文件位置(文件指针)不同.
在目标文件中,RVA的意义不大,因为未分配内存位置.在这种情况下,RVA将是一个部分内的地址(在本表后面描述),稍后在链接期间将重定位应用于该地址.为简单起见,编译器应该只将每个部分中的第一个RVA设置为零.
VA(虚拟地址).与RVA相同,但不删除图像文件的基址.该地址称为"VA",因为Windows为每个进程创建了一个独立的VA空间,与物理内存无关.对于几乎所有目的,VA应仅被视为地址.VA不像RVA那样可预测,因为加载程序可能无法将图像加载到其首选位置.
即使在读完这篇文章之后,我仍然没有得到它.我有很多问题.任何人都可以用实际的方式解释它.请遵守Object File&Image File所述的术语.
我所知道的就是地址
.data和.text(对于函数名称)的地址.如果我知道有什么问题,请纠正我.
编辑:
在阅读弗朗西斯给出的答案之后,我清楚了解物理地址,VA和RVA是什么以及它们之间的关系.
所有变量和方法的RVAs必须在重定位期间由链接器计算.那么,(方法/变量的RVA值)==(它从文件开头的偏移量)?一定是真的.但令人惊讶的是,它没有.为什么这样?
我用选中此PEView 上c:\WINDOWS\system32\kernel32.dll,结果发现:
.text这是dll的第一部分)..text通过.data,.rsrc直到最后一节的最后一个字节(.reloc)RVA&的FileOffset是不同的.并且第一部分的第一个字节的RVA"始终"显示为0x1000我猜:
所有,第一个(.text此处)部分之前的数据字节"不"实际加载到进程的VA空间中,这些数据字节仅用于定位和描述这些部分.它们可以被称为"元部分数据".
因为它们没有加载到VA空间的过程中.术语RVA的使用也没有意义,这就是为什么RVA == FileOffset这些字节的原因.
以来,
.text,.data,.rsrc,.reloc是这样的字节.0x00000PEView软件是从它开始的 …我正在制作一个带有Webpack设置的React,我正在努力做一些看似应该是一个简单的任务.我希望webpack包含图像,并尽量减少它们,就像我吞咽一样,但我无法弄明白.我只是希望能够像我这样在我的CSS中链接图像:
/* ./src/img/background.jpg */
body { background: url('./img/background.jpg'); }
Run Code Online (Sandbox Code Playgroud)
我在src文件夹中包含了所有的css/js/img文件夹.Webpack输出到dist文件夹,但我无法弄清楚如何在那里获取图像.
这是我的webpack设置:
var path = require('path');
var webpack = require('webpack');
var HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
devtool: 'cheap-eval-source-map',
entry: [
'webpack-dev-server/client?http://localhost:8080',
'webpack/hot/dev-server',
'./src/index.js'
],
output: {
path: path.join(__dirname, 'dist'),
// publicPath: './dist',
filename: 'bundle.js'
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new HtmlWebpackPlugin({
template: './src/index.html'
})
],
module: {
loaders: [{
exclude: /node_modules/,
test: /\.js?$/,
loader: 'babel'
}, {
test: /\.scss$/,
loader: 'style!css!sass'
}, {
test: /\.(png|jpg)$/,
loader: 'file-loader'
}]
},
devServer: …Run Code Online (Sandbox Code Playgroud) 我想知道如何使用webpack设置内联svg?
我正在关注react-webpack-cookbook.
我使用文件加载器正确设置了webpack.config.
但是,该示例显示使用如下背景图像:
.icon {
background-image: url(./logo.svg);
}
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,但我想有一个内联svg图像我该怎么做才能在我的react组件中包含我的logo.svg内联?
import React, { Component } from 'react'
class Header extends Component {
render() {
return (
<div className='header'>
<img src={'./logo.svg'} />
</div>
);
}
};
export default Header
Run Code Online (Sandbox Code Playgroud) 我无法弄清楚如何使用webpack sass-loader渲染css文件.
这是我的webpackconfig.js的样子:
module.exports = {
context: __dirname + "/app",
entry: {
javascript: "./app.js",
html: "./index.html"
},
output: {
filename: "app.js",
path: __dirname + "/dist"
},
module: {
loaders: [
//JAVASCRIPT
{
test: /\.js$/,
exclude: /node_modules/,
loaders: ["babel-loader"],
},
//Index HMTML
{
test: /\.html$/,
loader: "file?name=[name].[ext]",
},
//Hotloader
{
test: /\.js$/,
exclude: /node_modules/,
loaders: ["react-hot", "babel-loader"],
},
// SASS
{
test: /\.scss$/,
loader: 'style!css!sass'
}
],
}
}
Run Code Online (Sandbox Code Playgroud)
如您所见,我正在使用文档中指定的sass-loader模块加载器.
{
test: /\.scss$/,
loader: 'style!css!sass'
}
Run Code Online (Sandbox Code Playgroud)
我的根看起来像这样:
Project Root:
app:
style.scss …Run Code Online (Sandbox Code Playgroud) ES6的模块基于灵活的加载器架构(虽然标准不是最终的,所以......).
这是否意味着基于system.js的ES6加载器可以加载所有资产?即CSS,HTML,图像,文本,...任何类型的文件?
我问,因为我开始使用WebComponents和Polymer,它们有自己的HTML导入,并使用ES6实现它们,ES6有自己的import/loader(system.js).
我正在使用GNU binutils在Windows上使用程序集构建一个dll.
我知道可以在加载可执行文件时或在运行时加载dll(使用LoadLibrary api调用).
对于加载时加载,我似乎只需要dll文件:不需要.a,.lib或.def文件.我想知道这些文件格式代表什么,它们的用途是什么.
我所知道的和一些具体问题:
.a是Unix上通常用于静态库的扩展..a文件是使用GNU ld 的--out-implib选项生成的.它被认为是一个"进口图书馆",足够公平.问题是"如果我在链接时不需要它,那对我来说有什么用?"
.lib是Windows上用于静态库的扩展,根据维基百科,在windows下也被用作"导入库",所以我强烈怀疑它们只是binutils调用.a文件的另一个名称.真假 ?
我可以找到的所有页面都指出.def文件列出了dll的导出符号.这与"导入库"应该做的有点类似吗?
另外,我在这里读到使用.def文件是在源文件中手动指定导出的替代方法(我做过).但我还记得读取(找不到引用).def文件为导出的符号提供索引(序号),允许更快的运行时加载.是这样吗 ?