我使用create-react-app
命令來創建我的項目,我很奇怪按鈕onClick
不會觸發。我看到這個錯誤,我以前反應按鈕onClick不會觸發
invariant.js:38 Uncaught Invariant Violation: addComponentAsRefTo(...): Only a ReactOwner can have refs. You might be adding a ref to a component that was not created inside a component's "render" method, or you have multiple copies of React loaded
不知道這是否錯誤導致按鈕單擊不費一槍沒見過。代碼非常簡單,在其他項目中工作正常。
import React from 'react';
const MyComponent = React.createClass({
myClick: function() {
alert("Hello World!");
},
render: function() {
return(
<div>
<button onClick={this.myClick}>Click Me</button>
</div>
);
}
});
export default MyComponent;
這很可能是「你有多個React加載副本」。什麼是你的package.json以及項目的樣子? – goldbullet
的package.json具有這些依賴關係: 「devDependencies」:{ 「反應的腳本」: 「0.4.3」 }, 「依賴性」:{ 「反應」: 「^ 15.3.2」, 「react- dom「:」^ 15.3.2「, 」react-router「:」^ 2.8.1「 }, – ychui
和這個組件在哪裏掛載? – goldbullet