0
我都项目,使用vue-init
用的WebPack创建并测试vue-init。无法解析字体时NPM运行单元
我添加自定义字体,创建使用“icomoon”,我的项目,这样
在main.js
:
import './main.scss'
在main.scss
:
@import './assets/fonts/icons/style.scss';
在style.scss
@import 'variables';
@font-face {
font-family: 'icomoon';
src:
url('#{$icomoon-font-path}/icomoon.ttf') format('truetype'),
url('#{$icomoon-font-path}/icomoon.woff') format('woff'),
url('#{$icomoon-font-path}/icomoon.svg') format('svg');
font-weight: normal;
font-style: normal;
}
...
而且在variables.scss
$icomoon-font-path: './assets/fonts/icons/fonts' !default;
...
项目结构是这样的:
src
|-assets
| |-fonts
| | icons
| | |-fonts
| | | |-icomoon.svg
| | | |-icomoon.ttf
| | | |-icomoon.woff
| | |-style.scss
| | |-variables.scss
| |-...
|-...
|-main.js
|-main.scss
|-...
当我试图执行npm run unit
,我收到这样的错误:
...
ERROR in ./node_modules/css-loader?{"minimize":false}!./node_modules/sass-loader/lib/loader.js?{}!./src/assets/fonts/icons/style.scss
Module not found: Error: Can't resolve './assets/fonts/icons/fonts/icomoon.woff' in '/Users/administrator/projects/front-end-landing/src/assets/fonts/icons'
@ ./node_modules/css-loader?{"minimize":false}!./node_modules/sass-loader/lib/loader.js?{}!./src/assets/fonts/icons/style.scss 6:188-238
@ ./src/assets/fonts/icons/style.scss
@ ./src ^\.\/(?!main(\.js)?$)
@ ./test/unit/index.js
...
PhantomJS 2.1.1 (Mac OS X 0.0.0) ERROR
Error: Cannot find module "./assets/fonts/icons/fonts/icomoon.ttf"
at http://localhost:9877webpack:///src/assets/fonts/icons/style.scss:6:0 <- index.js:39212
但在同一时间,我是否会使用npm run dev
,图标工作正常运行的项目,我可以看到他们,他们正在装载成功
所以,我的问题是,什么我做错了,为什么当我试图运行测试,图标未正确加载?