Я пытаюсь использовать свойство ref
с использованием React. Я получаю странную ошибку в моем браузере, и я не могу понять, в чем проблема. Может кто-нибудь объяснить мне, почему я получаю эту ошибку:Ref error React
Error: Invariant Violation: addComponentAsRefTo(...): Only a ReactOwner can have refs. This usually means that you're trying to add a ref to a component that doesn't have an owner (that is, was not created inside of another component's
render
method). Try rendering this component inside of a new top-level component which will hold the ref.
, когда у меня есть этот код:
/**
* @jsx React.DOM
*/
(function(){
var react = require('react');
var App = react.createClass({
render: function() {
return (
<h1 ref="myRef">This is a test</h1>
);
}
});
react.render(
<App />,
document.body
);
}());
Вы пытаетесь сделать href? Если нет, можете ли вы объяснить, какова ваша цель с помощью ref? – magnudae
Спасибо за ответ, но я не пытаюсь использовать href. Я следую этому [учебнику] (http://facebook.github.io/react/docs/more-about-refs.html) о том, как использовать свойство ref, но без успеха. – John
Хорошо, я попробовал немного самостоятельно. Похоже, проблема заключается в том, что h1 устанавливается как верхний элемент, родительский для всех. Это означает, что ref избыточен, так как нет ничего, что требует ref. Это то, что пытается сообщить сообщение об ошибке. Попытайтесь расширить свой пример, как в учебнике. – magnudae