$font-path: '../fonts' !global;
/*fonts*/
/* roboto-300 - latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: url('#{$font-path}/roboto-v15-latin-300.eot'); /* IE9 Compat Modes */
src: local('Roboto Light'), local('Roboto-Light'), url('#{$font-path}/roboto-v15-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('#{$font-path}/roboto-v15-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
url('#{$font-path}/roboto-v15-latin-300.woff') format('woff'), /* Modern Browsers */
url('#{$font-path}/roboto-v15-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
url('#{$font-path}/roboto-v15-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
}
└── Project
├── assets
│ └── scripts
│ └── main.ts
│ └── scss
│ └── fonts
│ └── roboto-condensed-v13-latin-700.eot
│ └── main.scss
│
└── webpack.config.js
var path = require('path');
var extractTextPlugin = require("extract-text-webpack-plugin");
var cleanWebpackPlugin = require('clean-webpack-plugin');
var webpack = require('webpack');
module.exports = {
entry: {
'role/role': './assets/scripts/role/roleVM.ts',
main: './assets/scripts/main.ts',
vendor: ["bootstrap", "popper.js", "jquery"]
},
output: {
filename: 'js/[name].js',
path: path.resolve(__dirname, 'wwwroot/dist/')
},
module: {
rules: [
{
test: /\.tsx?$/,
loader: 'ts-loader',
exclude: /node_modules/,
},
{
test: /\.scss$/,
use: extractTextPlugin.extract({
use: [{
loader: "css-loader", options: {
sourceMap: true
}
}, {
loader: "resolve-url-loader"
},
{
loader: "sass-loader", options: {
sourceMap: true
},
}],
fallback: 'style-loader'
}),
exclude: /node_modules/
},
{
test: /.(ttf|otf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/,
use: [{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts/'
}
}]
}
]
},
plugins: [
new cleanWebpackPlugin(['dist'], {
root: path.resolve(__dirname, 'wwwroot'),
verbose: true,
dry: false
}),
new webpack.optimize.CommonsChunkPlugin({ name: 'vendor', filename: 'js/vendor.js' }),
new extractTextPlugin("./css/main.css"),
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
'window.jQuery': 'jquery',
'Popper': 'popper.js'
})
],
resolve: {
extensions: [".tsx", ".ts", ".js", '.scss'],
modules: [
path.resolve('./'),
path.resolve('./node_modules'),
]
}
};
你能试着添加下面的两个选项吗。
>
ExtractTextPlugin有一个publicPath选项可以解决此问题。
module.exports = {
entry: {
'role/role': './assets/scripts/role/roleVM.ts',
main: './assets/scripts/main.ts',
vendor: ["bootstrap", "popper.js", "jquery"]
},
output: {
filename: 'js/[name].js',
path: path.resolve(__dirname, 'wwwroot/dist/')
},
devtool:'source-map', //..1. add devtool option to source-map
module: {
rules: [
{
test: /\.tsx?$/,
loader: 'ts-loader',
exclude: /node_modules/,
},
{
test: /\.scss$/,
use: extractTextPlugin.extract({
publicPath:'',
//2. add public path to your font folder in the build directory
use: [{
loader: "css-loader", options: {
sourceMap: true
}
}, {
loader: "resolve-url-loader"
},
{
loader: "sass-loader", options: {
sourceMap: true
},
}],
fallback: 'style-loader'
}),
exclude: /node_modules/
},
{
test: /.(ttf|otf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/,
use: [{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts/'
}
}]
}
]
},
plugins: [
new cleanWebpackPlugin(['dist'], {
root: path.resolve(__dirname, 'wwwroot'),
verbose: true,
dry: false
}),
new webpack.optimize.CommonsChunkPlugin({ name: 'vendor', filename: 'js/vendor.js' }),
new extractTextPlugin("./css/main.css"),
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
'window.jQuery': 'jquery',
'Popper': 'popper.js'
})
],
resolve: {
extensions: [".tsx", ".ts", ".js", '.scss'],
modules: [
path.resolve('./'),
path.resolve('./node_modules'),
]
}
};
问题内容: 我的node_modules文件夹中的字体很棒,因此我尝试将其导入到主.scss文件中,如下所示: 但是Webpack捆绑编译失败,告诉我 因为font-awesome.scss文件引用了相对路径’../fonts/’。 如何告诉scss \ webpack @import另一个文件,并使用该文件的文件夹作为主文件夹,以便其相对路径按预期工作? 问题答案: 在SCSS \ SASS中似
我的webpack加载器如下所示: 但尝试包含文件时出错 ./node_modules/css-loader中出错?{“sourceMap”:true,“modules”:true,“importloaders”:1,“localidentname”:“[local]_[hash:base64:3]”}!./node_modules/postcss-loader/lib?{“plugins”:[n
问题内容: 我一直在尝试获取本地文件的正确路径。我有以下目录: 我在执行从与JS代码: 但这是行不通的,甚至警报也没有开始。怎么了? 我也尝试过这个: 在这种情况下,警报未定义。 问题答案: 由于它位于目录中,因此您需要执行以下操作: 文件路径是 纯JS:
样本数据- Header1,full_name,header3,header4 > 20,“Bob,XXX”,“Test”,30 20,“Evan”s,YYY“,”Test“,30 20,“Tom,ZZZ”,“Test”,30 第二行读起来不像预期的那样。因为full_name列值中有一个双引号。 我想忽略这类案件。任何建议都将不胜感激。 使用openCSV Java api进行解析。 编辑: 我
我的指南针版本是1.0.1(北极星)我的sass版本是3.4.5 当我做一个普通的指南针手表时,它工作得很好。我喜欢使用codekit,我想让它编译我的scss文件,但它不是,它让我发疯。 如果有人对如何解决这个问题有任何想法,请告诉我。提前谢谢。 尝试编译时出现以下错误:Compass无法编译项目中的一个或多个文件: /System/Library/Frameworks/Ruby.framewo
问题内容: 我仍然对如何使用webpack解析模块路径感到困惑。现在我写: 但我想写 我以为resolve.alias可能会有所帮助,因为我看到了一个类似的示例,所以可以使用它作为别名。 但是,如果我将别名设置为,将无法正常工作。 我觉得很笨,因为我已经阅读了很多文档,并且觉得自己缺少一些东西。避免用etc写下所有相对要求的正确方法是什么? 问题答案: Webpack 1.0 一种更直接的方法是使