Open Aneureka opened 6 years ago
@Aneureka 可以的,不过做 hexo 主题我就不能保证做成单页应用了(✖╭╮✖),这也是我为什么写这个项目的原因之一。
学前端入门一般不难,虽然我也才学了一两年而已(一。一;;)
真的好看,能做成hexo主题就好了,请问要怎么样才能做成你这个博客
@wangchsh 我这几天有空会做一个 hexo 主题试一下,大概参照 hexo-theme-one的样子,因为这个 hexo 主题也是单页应用的
不知道你说的"怎么样"指哪方面,如果是指怎么做 hexo 主题的话,可以参照 Create an Hexo Theme
我把你的代码clone到本地安装依赖运行后只能出现主页面,我还需要做些什么吗?
如果你是指 npm run dev
后只能看到首页,那是正常的,因为这里有一条指令我还没更新,即你需要在 dist
目录下启动一个服务器,接受请求。比如, http-server --cors -p 5000
。
如果你是按照正常的顺序,即 npm run build
(生成前端静态文件),npm run gen
(生成 api 文件夹),之后,那你确实在 dist
文件里只能看到一个 index.html
。
如果你再执行 npm run deploy
(部署,当然你最好先别执行这个指令,后面会说原因),那么 dist
文件里还会多一个 404.html
,整个 dist
文件夹应该会和 lazzzis/lazzzis.github.io 一样(除了那个 hexo-theme-mls 文件夹)。
这里比较 tricky 的一点是,当你访问 GitHub Pages 上的博客时,如果没有找到你请求的资源,那么 GitHub Pages 就会返回项目目录中的 404.html (参考这里)。这也就是 vue-router 文档说的必要的后台配置,GitHub Pages 帮你实现了。
举个例子,比如你访问 https://lazzzis.github.io/blogs
,其实我这 GitHub Pages 项目目录中是没有 blogs
文件夹的,理应是 404,但实际会返回项目的 404.html
,而我这里 404.html
和 index.html
文件内容是完全一样的,然后 index.html
中的 js 文件会根据 url 做对应的逻辑,发起对应的请求。
之所以不建议你 npm run deploy
,是因为这个项目中有一些魔术字符串 / 魔术数字,你部署后发现有一些细节显示的是我的 id 。。。o(╥﹏╥)o
非常谢谢你的回答,可我还是有些不太懂,我在执行 npm run gen
后报了一个错误 SyntaxError: Unexpected token function at createScript (vm.js:56:10) at Object.runInThisContext (vm.js:97:10) at Module._compile (module.js:542:28) at Object.Module._extensions..js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Module.runMain (module.js:604:10) at run (bootstrap_node.js:393:7) at startup (bootstrap_node.js:150:9)
没有生成api文件夹,还想请问你怎么在 dist 目录下启动一个服务器,接受请求
这个问题解决了,起因貌似是我这边环境配置上的偏差,因为我本机测试是没问题,但换到另一架机器上却报错了。
启动服务器现在可以用 npm run server
,即可看到一个服务启动了。然后新开个终端,跑 npm run gen
生成 api 文件夹。接着执行 npm run dev
,那么应该没有问题,可以看到效果了。
我已经把这个项目改写成 hexo 主题了 -- hexo-theme-only。你可以考虑使用这个主题。
这么快的吗!
非常感谢你^_^,这个主题非常漂亮,抱走啦
可以的话能做个hexo主题么... 教练我也想学前端!