[英]Importing an SVG File in an Angular CLI Project?
import circle from './circle.svg';
但是当我在这样的Angular CLI项目中尝试完全相同的导入时:
import logo from './logo.svg';
VSCode显示错误:
Cannot find module './logo.svg'.ts(2307)
并且Angular显示错误:
ERROR in src/app/app.component.ts(5,18): error TS2307: Cannot find module './logo.svg'.
有什么想法吗?
对我有用的是
const logo = require('./logo.svg') as string;
如果不起作用,请尝试:
const circle = require('!!raw-loader?!../assets/logo.svg') as string;
它将禁用默认文件加载器并返回文件内容。
您也可以在运行时导入文件:
constructor(http: HttpClient) {
http.get('/assets/logo.svg', {responseType: 'text'})
.subscribe(svg => console.log(svg));
}
或将其用作图像源:
<img src="logo.svg" />
请注意,您的SVG格式无效,因此无法立即使用。 我必须将version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
到<svg>
标签使其显示:
<svg viewBox="0 0 104 104" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
...
</svg>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.