1
私は単純なchrome拡張機能を作成しており、ページ上でjavascript関数を上書きしたいと考えています。 JavaScriptは私にとってはあまりにも複雑すぎます。これはコードの一部です:入れ子になったjavascript関数を上書きする
}), define("components/Payout", ["react", "game-logic/clib", "game-logic/stateLib"], function(e, t, n) {
var r = e.DOM;
return e.createClass({
displayName: "Payout",
mixins: [e.addons.PureRenderMixin],
propTypes: {
engine: e.PropTypes.object.isRequired
},
getInitialState: function() {
return {
payout: 0
}
},
componentDidMount: function() {
window.requestAnimationFrame(this.draw)
},
draw: function() {
if (this.isMounted()) {
var e = t.calcGamePayout(t.getElapsedTimeWithLag(this.props.engine));
e ? this.setState({
payout: e * n.currentPlay(this.props.engine).bet
}) : this.setState({
payout: null
}), window.requestAnimationFrame(this.draw)
}
},
render: function() {
var e = n.currentPlay(this.props.engine).bet < 1e4 ? 2 : 0;
return r.span({
id: "payout"
}, t.formatSatoshis(this.state.payout, e))
}
})
}),
「ハイジャック」したい機能は「レンダリング」機能です。外部のJSファイルからどうすればいいですか?
私が望むのは、その機能の内容を調整したものに置き換えることです。変数obj
は、そのコードによって返されるオブジェクトが含まれている場合
最初に 'define'を上書きする必要があります(またはここで使用されているモジュールローダーの?内部構造を混乱させる)。その後、 '.prototype.render'プロパティにアクセスしてハイジャックすることができます。 – Bergi