Angular2 SVG指令无声地失败

时间:2016-11-01 17:53:52

标签: javascript angular svg angular2-directives

我正在尝试将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>

检查器中的

但它没有显示在页面上。

1 个答案:

答案 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>