frontend
frontend copied to clipboard
Tracking Issue: 维基编辑页
页面设计:https://www.figma.com/file/jW61odhQl5lZzhY4CqvvSF/Web-Page?node-id=3101%3A10839&t=W5OYcWukJRZmFrVQ-0
Website 组件/物料:
- [x] Header https://github.com/bangumi/frontend/pull/52
- [x] Footer https://github.com/bangumi/frontend/pull/56
物料设计: https://www.figma.com/file/jW61odhQl5lZzhY4CqvvSF/Web-Page?node-id=16%3A450
页面:
- [x] 维基编辑页 URL
subject/${id}/edithttps://github.com/bangumi/frontend/pull/312 - [ ] 人物关联修改
- [ ] 角色关联修改
- [ ] 条目关联修改
- [x] https://github.com/bangumi/frontend/issues/327
- [ ] diff
高级模式使用 monaco editor,wiki 语法的 tokenizer 可以参考
https://next.bgm.tv/demo/subject/184017/edit
https://github.com/bangumi/GraphQL/blob/f4a11f12205aa29ef21f8ba038feda4ea466e317/lib/static/editor.js
- 类型应该按条目类别区分
- 动画信息支持 wiki 模式 与 入门模式编辑
- 字段校验待补充
- 修改成功跳转 【被编辑条目的首页】(没做)
不要使用生产 API 进行测试和开发
@trim21 assigned 一下我吧,我把这个写了
tokenizer 稍微有一点问题,有个括号着色错了
还应该有几个template...
var tpl = {
TVAnime: "{{Infobox animanga/TVAnime\n|中文名= \n|别名= {\n\n}\n|话数= * \n|放送开始= * \n|放送星期=\n|官方网站=\n|播放电视台=\n|其他电视台= \n|播放结束= \n|其他= \n|Copyright=\n}}",
OVA: "{{Infobox animanga/OVA\n|中文名= \n|别名= {\n\n}\n|话数= * \n|发售日= * \n|官方网站=\n|开始= \n|结束= \n|其他= \n}}",
Movie: "{{Infobox animanga/Movie\n|中文名= \n|别名= {\n\n}\n|上映年度= * \n|片长= \n|官方网站=\n|其他= \n|Copyright= \n}}",
Anime: "{{Infobox animanga/Anime\n|中文名= \n|别名= {\n\n}\n|上映年度= * \n|片长= \n|官方网站=\n|其他= \n|Copyright= \n}}",
Book: "{{Infobox animanga/Book\n|中文名= \n|别名= {\n\n}\n|出版社= *\n|价格=\n|其他出版社= \n|连载杂志= \n|发售日= \n|页数=\n|ISBN= \n|其他= \n}}",
Manga: "{{Infobox animanga/Manga\n|中文名= \n|别名= {\n\n}\n|出版社= *\n|价格=\n|其他出版社= \n|连载杂志= \n|发售日= \n|册数= \n|页数=\n|话数= \n|ISBN= \n|其他= \n}}",
Novel: "{{Infobox animanga/Novel\n|中文名= \n|别名= {\n\n}\n|出版社= * \n|价格=\n|连载杂志= \n|发售日= \n|册数= \n|页数=\n|话数= \n|ISBN= \n|其他= \n}}",
BookSeries: "{{Infobox animanga/BookSeries\n|中文名= \n|别名= {\n\n}\n|出版社= * \n|连载杂志= \n|开始= \n|结束= \n|册数= \n |话数= \n|其他= \n}}",
Album: "{{Infobox Album\n|中文名=\n|别名= {\n\n}\n|版本特性= \n|发售日期= \n|价格= \n|播放时长= \n|录音= \n|碟片数量= \n}}",
Game: "{{Infobox Game\n|中文名=\n|别名= {\n\n}\n|平台= {\n\n}\n|游戏类型=\n|游戏引擎=\n|游玩人数=\n|发行日期=\n|售价=\n|website=\n}}",
TV: "{{Infobox real/Television\n|中文名=\n|别名= {\n\n}\n|集数=\n|放送星期=\n|开始=\n|结束=\n|类型=\n|国家/地区=\n|语言=\n|每集长=\n|频道=\n|电视网=\n|电视台=\n|视频制式=\n|音频制式=\n|首播国家=\n|首播地区=\n|台湾名称=\n|港澳名称=\n|马新名称=\n|官方网站=\n|imdb_id=\n|tv_com_id=\n}} ",
Crt: "{{Infobox Crt\n|简体中文名=\n|别名={\n[第二中文名|]\n[英文名|]\n[日文名|]\n[纯假名|]\n[罗马字|]\n[昵称|]\n}\n|性别=\n|生日=\n|血型=\n|身高=\n|体重=\n|BWH=\n|引用来源={\n}\n}}",
doujinBook: "{{Infobox doujin/Book\n|作者={\n\n}\n|原作=\n|CP=\n|语言=\n|页数=\n|尺寸=\n|价格=\n|发售日=\n}}",
doujinMusic: "{{Infobox doujin/Album\n|艺术家={\n\n}\n|原作=\n|语言=\n|版本特性=\n|碟片数量=\n|播放时长=\n|价格=\n|发售日=\n}}",
doujinGame: "{{Infobox doujin/Game\n|别名= {\n\n}\n|开发者={\n\n}\n|原作=\n|平台=\n|游戏类型=\n|游戏引擎=\n|游玩人数=\n|语言=\n|价格=\n|发售日=\n}}"
}
原本的template