Closed
Description
Bug Report or Feature Request (mark with an x
)
- [ ] bug report -> please search issues before submitting
- [x] feature request
Command (mark with an x
)
- [x] new
- [x] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [ ] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc
Versions
npm: 6.4.1
node: v10.7.0
ng cli: 6.2.6
macOS High Sierra
Repro steps
- Create new project
ng new ng-sass-test--style=scss
- Add following files:
- src
- sprite
- _sprite.scss
- sprite.svg
With the following content:
# _sprite.scss
.sprite-common {
background-image: url('sprite.svg');
}
Add the following line to src/styles.scss
.
@import '~src/sprite/sprite';
Add the same line to src/app/app.component.scss
.
The log given by the failure
ERROR in ./src/styles.scss (./node_modules/raw-loader!./node_modules/postcss-loader/lib??embedded!./node_modules/sass-loader/lib/loader.js??ref--15-3!./src/styles.scss)
Module Error (from ./node_modules/postcss-loader/lib/index.js):
(Emitted value instead of an instance of Error) CssSyntaxError: /***/ng-sass-test/src/sprite/_sprite.scss:2:22: Can't resolve 'sprite.svg' in '/***/ng-sass-test/src'
1 | .sprite-common {
> 2 | background-image: url('sprite.svg');
| ^
3 | }
ERROR in ./src/app/app.component.scss
Module Error (from ./node_modules/postcss-loader/lib/index.js):
(Emitted value instead of an instance of Error) CssSyntaxError: /***/ng-sass-test/src/sprite/_sprite.scss:2:22: Can't resolve 'sprite.svg' in '/***/ng-sass-test/src/app'
1 | .sprite-common {
> 2 | background-image: url('sprite.svg');
| ^
3 | }
Desired functionality
I would like to be able to use the relative file path in the scss file. I know this is solved by using an absolute path for the image. But I'm using the package svg-sprite, I'm not an expert in the package, but it looks like it doesn't support generation of an absolute path. Maybe I'm missing something in the angular-cli setup, so I can use this way of path-handling.