Ваш пример кода выглядит как responsejs, отсюда и этот ответ.
В прошлом мне приходилось использовать библиотеку под названием react-scrollable-anchor
. Проверьте это here
So in your case it'll probably look like so:
import ScrollableAnchor from 'react-scrollable-anchor';
// your other stuffs...
render() {
return
1
2
3
}
Примечание. Ваши методы рендеринга выглядят странно без возврата.
Если вы используете Angular, о котором я очень мало знаю, вы можете проверить эту библиотеку https://www.npmjs.com/package/ng2-page-scroll
Кроме того, для чего-то более простого, чем это, вы ожидаете, что не будете использовать другую библиотеку поверх уже имеющейся у вас библиотеки маршрутизации. Проверьте эти темы GitHub для:
Кроме того, использование вами события onClick
для тега img
кажется мне немного вынужденным (чрезмерное использование js). Есть ли причина, по которой вы не делаете, как предложил @Джон Руделл в своем комментарии? то есть оборачиваем ваше изображение в якорь примерно так:
handleClick(event) {
// Not today we're just going to use an anchor for this
// this.props.history.push('/questions/1234')
}
render() {
<a href="/questions/1234#two >
<img src={"/public/123"} className="thumbnail" />
</a>
}
Примечание: технически, есть разговоры о том, что вышеупомянутое не является действительным html согласно правилам вложенности. Вложение встроенного блока внутри встроенного элемента. Есть решения для этого. Я просто не хотел отвлекаться от простой идеи использования правильных инструментов.
В случае, если OP или кто-то еще интересуется, решение может быть:
render() {
<div style={{ position: "relative" }} >
<img src={"/public/123"} className="thumbnail" />
<a
href="/questions/1234#two
style={{
position: "absolute",
top: 0,
bottom: 0,
width: "100%"
/>
</div>
}
Надеюсь, это поможет.