我正在尝试将ng2-inline-svg
插件用于我的Angular2应用程序,但它是否会默默地失败。
外部模板:
<div class="my-icon" aria-label="My icon" [inlineSVG]="'src/assets/svg/sprite.svg'"></div>
组件中的参考:
@Component({
selector: "home",
styleUrls: [],
templateUrl: "./home.component.html"
})
我可以使用我的chrome检查器来查看
<div aria-label="My icon" class="my-icon" ng-reflect-inline-s-v-g="src/assets/svg/sprite.svg"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="position:absolute; width: 0; height: 0">
<symbol viewBox="0 0 100 100" id="icon-plus">
...
</symbol>
<symbol viewBox="0 0 77 100" id="icon-edit">
...
</symbol>
</svg></div>
但它没有显示在页面上。
答案 0 :(得分:0)
看来问题实际上是我的svg而不是插件的样式。
例如,此文件有效:
int xbee_init (char *port, struct termios *tty) {
int fd=open(port,O_RDWR | O_NOCTTY | O_NONBLOCK);
if(fd == -1){return 0;}//should be something better
else {
if(tcgetattr(fd, tty)!=0){return 0;}
else{
// cfsetospeed(tty, B57600);
// cfsetispeed(tty, B57600);
// tty->c_cflag &= ~PARENB;
// tty->c_cflag &= ~CSTOPB;
// tty->c_cflag &= ~CSIZE;
// tty->c_cflag |= CS8;
// tty->c_cflag &= ~CRTSCTS;
// tty->c_cflag |= CLOCAL | CREAD;
// // tty->c_cflag |= PARENB;
// // tty->c_cflag ^= PARENB;
// tty->c_iflag |= IGNPAR | IGNCR;
// tty->c_iflag &= ~(IXON | IXOFF | IXANY);
// tty->c_lflag |= ICANON;
// tty->c_oflag &= ~OPOST;
cfmakeraw(&tty);
cfsetispeed(&tty, B57600);
tcsetattr(fd, TCSANOW, &tty);
}
}
return fd;
}
如果您查看<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 100 100" height="100" width="100">
<g transform="translate(0,-952.36216)">
<path transform="translate(0,952.36216)" d="M 40 0 L 40 40 L 0 40 L 0 60 L 40 60 L 40 100 L 60 100 L 60 60 L 100 60 L 100 40 L 60 40 L 60 0 L 40 0 z " />
</g>
</svg>
标记的末尾,您可以看到高度和宽度的定义位置,而在我发布的原始svg
中,它的高度和宽度设置为零。< / p>