【问题标题】:ReactJS & Vivus SVG AnimationReactJS 和 Vivus SVG 动画
【发布时间】:2016-06-30 23:13:10
【问题描述】:

我是 reactJS 新手,我正在尝试在 React 中制作我的 SVG 动画,但遇到了一些问题。

我从https://www.npmjs.com/package/vivus得到了vivus

import React from "react";
import ReactDOM from "react-dom";
import Vivus from "vivus";

export default class MySkills extends React.Component {
constructor() {
    super();
    new Vivus('my-div', {duration: 200, file: 'link/to/my.svg'});
}

render() {
    return (
        <section id="MySkills" className="mySkills">
            <div className="wrapper">
                <div id="my-div"></div>
            </div>
        </section>
    );
}
}

这给我带来了错误。我认为问题出在构造函数上,但我不确定将 vivus 对象放在哪里?

错误信息:

未捕获的错误:Vivus [构造函数]:“元素”参数与现有 ID 无关

【问题讨论】:

  • 抛出什么错误?
  • 未捕获的错误:Vivus [构造函数]:“元素”参数与现有 ID 无关

标签: javascript svg reactjs vivus


【解决方案1】:

您必须在组件安装后初始化您的 Vivus 对象。

export default class MySkills extends React.Component {
    constructor() {
        super();

    }
    componentDidMount(){
        new Vivus('my-div', {duration: 200, file: 'link/to/my.svg'});
    }    
    render() {
        return (
            <section id="MySkills" className="mySkills">
                <div className="wrapper">
                    <div id="my-div"></div>
                </div>
            </section>
        );
    }
}

【讨论】:

  • 谢谢!完美运行!
  • 请问'file' 属性的值究竟是什么?我尝试了几种链接 svg 文件的选项,包括到 svg 文件的相对路径等,但没有成功。在 Vivus 框架中出现“找不到页面”。那太棒了。谢谢!
猜你喜欢
  • 2018-06-19
  • 1970-01-01
  • 1970-01-01
  • 2015-09-29
  • 2020-09-06
  • 2016-05-03
  • 2015-07-10
  • 2014-05-18
  • 1970-01-01
相关资源
最近更新 更多