@tknospdr @pfaffman 我拼凑了一个快速组件,允许您输入主题 ID 并跳转到它。
创建一个新组件,并在“编辑 CSS/HTML”按钮下的 JS 选项卡中添加此内容[1]:
import { apiInitializer } from "discourse/lib/api";
import Component from '@glimmer/component';
import { action } from "@ember/object";
import Form from "discourse/components/form";
import DiscourseURL from "discourse/lib/url";
export default apiInitializer((api) => {
api.renderBeforeWrapperOutlet("full-page-search-filters",
class GoToTopic extends Component {
@action
handleSubmit(data) {
DiscourseURL.routeTo(`/t/${data.id}`);
}
<template>
<div class="topic-id-go-to" style="margin-top: 1em;">
<Form @onSubmit={{this.handleSubmit}} as |form|>
<form.Field @name="id" @title="Topic id" as |field|>
<field.Input @type="number" @validation="required" />
</form.Field>
<form.Submit />
</Form>
</div>
</template>
}
);
});
这会在搜索页面添加一个输入框:
“提交”按钮用于转到主题[2];它不会影响搜索结果。
希望这对您有帮助!
