我正在尝试使用Webpack设置一个角度项目,但我无法弄清楚如何从html模板中引用图像并将它们包含在构建中.
我的项目树如下:
package.json
app/
- images/
- foo.png
- scripts/
- styles/
- templates/
Run Code Online (Sandbox Code Playgroud)
我正试图html-loader一起使用url-loader,file-loader但它只是没有发生.
这是一个示例模板: app/templates/foo.html
<img src="../images/foo.png" />
Run Code Online (Sandbox Code Playgroud)
问题#1:我希望能够引用相对于的图像app/.现在,路径需要相对于模板文件,这将很快变得丑陋(../../../images/foo.png).
问题2:即使我指定了相对路径,正如我上面所做的那样,项目构建成功但没有真正发生.路径保持原样,没有图像出现dist/.
这是我的webpack配置:
var path = require('path');
var webpack = require('webpack');
var ngminPlugin = require('ngmin-webpack-plugin');
var HtmlWebpackPlugin = require('html-webpack-plugin');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var ngAnnotatePlugin = require('ng-annotate-webpack-plugin');
module.exports = function(config, env) {
var appRoot = path.join(__dirname, 'app/')
if(!env) env = 'development';
var webpackConfig = {
cache: …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用像-tres和基础的东西与React和css模块,但我无法弄清楚如何正确地将它们导入我的项目.
请注意,我正在使用HotModuleReplacementPlugin并ExtractTextPlugin获取单个css文件.
在顶级组件的css文件中的某个地方,我希望能够做到,@import 'font-awesome';但我怎么能这样做,以便文件将按原样处理,并且类不会最终本地化为font_awesome__fa-check这样的?
这是我的webpack配置:
var paths = {
app: path.join(__dirname, './app/'),
dist: path.join(__dirname, './dist/'),
external: path.join(__dirname, './node_modules/'),
}
module.exports = {
entry: {
site: [
'webpack-dev-server/client?http://localhost:5000',
'webpack/hot/dev-server',
path.join(paths.app, '/index.js'),
]
},
output: {
path: paths.dist,
publicPath: '/',
filename: 'scripts/[name].[hash].js',
chunkFilename: '[name].[chunkhash].js'
},
resolve: {
extensions: ['', '.js'],
root: paths.app,
alias: {
'font-awesome.css': path.join(paths.external, '/font-awesome/css/font-awesome.min.css')
}
},
module: {
loaders: [
{
test: /\.jsx?$/,
loaders: ['babel'],
include: path.join(__dirname, …Run Code Online (Sandbox Code Playgroud)