基于 vue 和 github issue 的仅有 93kb 的轻量博客! - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
rozbo
V2EX    分享创造

基于 vue 和 github issue 的仅有 93kb 的轻量博客!

  •  
  •   rozbo
    rozbo 2017-09-12 17:58:32 +08:00 6829 次点击
    这是一个创建于 2960 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一个有趣的特点是基于 github 404 机制的 vue 路由,让网站看起来像是真的有后端一样~
    另外发布博客和删除都可以通过 github issue 来操作,相对笨重的 hexo 之类的还算是优雅吧

    大家可以看看,有建议的可以提 issue,没建议觉得挺好的可以给 star
    : )
    老天我这不是外链啊。
    https://blog.zz173.com
    https://github.com/rozbo/blog
    36 条回复    2017-09-20 12:31:49 +08:00
    hwk603
        1
    hwk603  
       2017-09-12 18:08:39 +08:00
    点赞占前排
    cyio
        2
    cyio  
       2017-09-12 18:13:38 +08:00
    有分页吗,打算拿过来用
    oseau
        3
    oseau  
       2017-09-12 18:42:46 +08:00
    Tue Sep 12 18:42:11 CST 2017 打开提示

    Error:Forbidden

    @rozbo
    oseau
        4
    oseau  
       2017-09-12 18:44:03 +08:00
    Failed to load resource: the server responded with a status of 403 (Forbidden)

    api.github.com/repos/rozbo/blog/issues?creator=rozbo
    Sanko
        5
    Sanko  
       2017-09-12 18:49:23 +08:00 via Android
    mark 下
    qiayue
        6
    qiayue  
    PRO
       2017-09-12 18:57:02 +08:00
    如果有哪位哥哥有空给加上主题模块,那要是服务大众的事儿呢!
    ->
    如果有哪位哥哥有空给加上主题模块,那真是服务大众的事儿呢!
    abmin521
        7
    abmin521  
       2017-09-12 20:26:54 +08:00
    感觉不错 不过楼主刷 git 的 repo...
    rashawn
        8
    rashawn  
       2017-09-12 21:24:11 +08:00 via iPhone
    本来 push 就可以了 为啥要用 issue,发个博客不就是 html 里加个 a 标签……

    样式那么多 markdown org 转 html 的 css 随便改,不明白为啥要花时间配置那些东西,完全没有手动加标签快…
    ylsc633
        9
    ylsc633  
       2017-09-12 22:39:57 +08:00
    我有两个偏的问题:

    第一: 那个六位数的 QQ 是楼主的吗?
    第二:你那个 github 的 commit 记录,是自己每天提交着玩的吗? 有个头像的影子
    SilentDepth
        10
    SilentDepth  
       2017-09-12 23:38:05 +08:00
    @rashawn #8 因为可以单独写 Issue
    zhlssg
        11
    zhlssg  
       2017-09-12 23:49:19 +08:00 via iPhone
    可以
    rozbo
        12
    rozbo  
    OP
       2017-09-13 09:02:03 +08:00
    @cyio
    分页也是伪分页,因为 github 返回的 issue 列表是一次性返回的

    @oseau
    不知道什么原因,提示这个是因为你访问不了 github 的 api,被 ban 了?


    @rashawn
    push 你至少需要一个设备吧,需要好几步来完成,而 github issue 则可以通过手机端、github 客户端等多个平台无状态随时随地添加和修改甚至使用自带的评论。


    @ylsc633
    1 是
    2 这个是通过一个脚本刷上去的,不过没什么卵用
    missdeer
        13
    missdeer  
       2017-09-13 09:30:23 +08:00
    这个牛逼!
    tf2017
        14
    tf2017  
       2017-09-13 10:27:00 +08:00
    挺不错的,功能可以在丰富些,比如展示 issue 的 label 作为文章的分类或者 Tag。
    tf2017
        15
    tf2017  
       2017-09-13 10:28:32 +08:00
    另外你也可以通过在你的 issue 里引用别人 repo 的 issue 的时候,作为转载 和 收藏
    zthxxx
        16
    zthxxx  
       2017-09-13 11:10:38 +08:00
    请问下 `404 机制的 vue 路由` 是指什么?
    pine
        17
    pine  
       2017-09-13 11:44:24 +08:00
    vue 是什么 怎么解决跨域问题的啊?
    rozbo
        18
    rozbo  
    OP
       2017-09-13 11:48:51 +08:00   1
    @tf2017
    tag 的功能第一版是有的,后来觉得没卵用不极简又给去掉了。。。
    引用的这个想法很不错,我之前都没有想到过
    @zthxxx
    这是这是纯前端的博客,却只能支持 https://blog.zz173.com/8 这样的非常规链接,你想到了什么了吗?

    @pine
    vue 是一个前端的框架,github api 允许所有域名跨域
    run2
        19
    run2  
       2017-09-13 12:50:51 +08:00   1
    基于 API 的话,key 和 secret 都保存在 client 里? 会不会直接被借用帮你发布新文章
    zthxxx
        20
    zthxxx  
       2017-09-13 17:17:10 +08:00
    @rozbo #18
    zthxxx
        21
    zthxxx  
       2017-09-13 17:17:41 +08:00
    @rozbo #18
    上一条按错键了。。
    zthxxx
        22
    zthxxx  
       2017-09-13 17:20:53 +08:00
    @rozbo

    非常规链接是指本身没有文件路径,确可以访问该路由么?
    这样的实现方式比起一般的静态路径访问有什么优势呢?
    arzterk
        23
    arzterk  
       2017-09-14 09:40:49 +08:00
    F12 之后页面显示重叠了,缩小页面也是
    Hieast
        24
    Hieast  
       2017-09-15 09:26:32 +08:00 via Android
    很赞,之前想做,可惜前端技能点没攒够
    cky2005
        25
    cky2005  
       2017-09-15 16:11:56 +08:00
    搭建成功,不过点开博客某个帖子,一按刷新,这个页面就会提示 404,而楼主的博客不会这样,怎么回事
    rozbo
        26
    rozbo  
    OP
       2017-09-15 17:17:46 +08:00
    @arzterk
    按道理是响应式的啊。。这边测试没能重现
    @cky2005
    这是因为我们是一个纯前端的页面,完全没有后端的处理能力,所以当直接访问 blog.zz173.com/8 的时候,服务器是一辆懵逼的状态,完全不支持应该怎么解析。此时他会怎么办呢?没错,404 页面。所以我们让 404 页面也具有路由功能,不就实现了接管任意网址吗?所以只需要把首页复制一份为 404 即可。这也是本程序的一个精髓所在。
    @zthxxx
    优势就是网址简单明了,好看,可装逼
    hoythan
        27
    hoythan  
       2017-09-15 17:22:27 +08:00
    你败给了 seo...蜘蛛进来毛也看不到
    rozbo
        28
    rozbo  
    OP
       2017-09-15 18:03:39 +08:00
    @hoythan
    的确是这样,所有前端渲染的通病。。。
    bookit
        29
    bookit  
       2017-09-17 22:50:20 +08:00
    很帅啊。
    wspsxing
        30
    wspsxing  
       2017-09-18 22:39:18 +08:00
    想法不错
    751762476
        31
    751762476  
       2017-09-19 17:01:56 +08:00
    不错哦
    Hieast
        32
    Hieast  
       2017-09-19 22:34:09 +08:00
    看到了是 mit 协议,就拿来用了。后期 seo 再试试别的解决方案,最坏的情况下也可以在 github issue 里搜到。
    另外 404 页面是假装后端是 php 么。
    Hieast
        33
    Hieast  
       2017-09-20 09:39:32 +08:00
    @rozbo https://developer.github.com/v3/issues/#list-issues-for-a-repository
    是有分页的,但是没有 page_size 参数。目前我能想到的主要工作就是:
    1. 将配置、发布脚本的定制参数到配置文件中,便于推广。
    2. 可以做半真实的分页功能,以及 label、搜索、排序功能,这些都做了前端的列表功能基本齐活了。
    3. seo 优化。
    4. 还有你自己说的主题啥的。
    Hieast
        34
    Hieast  
       2017-09-20 09:40:26 +08:00
    搜索是支持后端搜索的,q 参数
    rozbo
        35
    rozbo  
    OP
       2017-09-20 11:04:33 +08:00
    @Hieast
    协议什么的无所谓类,回头改成 wtf 协议。。。
    一般博客都是了不起几百篇文章,一次返回也不过几 KB,所以前端伪分页就好了,label,搜索,排序 api 都是支持的
    seo 的啥的估计就没办法了
    主题是最重要的,因为现在的 ui 比较有我自己的个人风格,其他人用起来可能不太习惯

    如果你改完之后,记得 pull requests.
    Hieast
        36
    Hieast  
       2017-09-20 12:31:49 +08:00 via Android
    @rozbo 这个接口不是全部返回的,一次返回 30 条记录啊,做伪分页更麻烦。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5917 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 06:21 PVG 14:21 LAX 23:21 JFK 02:21
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86