You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
2.1 KiB

5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
  1. # 基于golang开发的一套vue服务端渲染方案
  2. ## 使用
  3. > govue //直接执行
  4. > govue init //生成govue.json 配置文件
  5. > govue --config=dev.json init //生成dev.json 配置文件
  6. > govue --addr=127.0.0.1:8176 //运行在本地8176端口上
  7. > govue --config=dev.json //选择dev.json作为配置文件执行
  8. > govue --static=static //选定./static 为静态文件跟目录
  9. > govue --use_file=static/use.js //选定./static/use.js 为服务端渲染的使用文件
  10. ## 可以使用的库
  11. + Vue[vue]
  12. + $[jquery]
  13. + jQuery[jquery]
  14. + axios[axios]
  15. + window[不完备的dom环境]
  16. + document[不完备的dom环境]
  17. + location[不完备的dom环境]
  18. ## 扩展方法
  19. + Vue.UseRaw().component(..)[vue原始模板替换,不进行渲染]
  20. + GoUse(call function(ctx))[所有请求都经过该方法,优先于内联模式]
  21. + GoUseRegistered(id string,call function(query))[注册id标签对应的方法,优先于内联模式]
  22. + GetGoVueId()[获取当前页面Id]
  23. ## 扩展变量
  24. + GoHref[当前href,请使用location.href]
  25. + GoPath[当前path,请使用location.pathname]
  26. + GoHtmlSrc[当前html原始代码,请不要使用]
  27. + GoParam[请求参数,map形式]
  28. + GoExtData[扩展数据,例如获取cookie,GoExtData['cookie'] ]
  29. + Vue.GV [用于判断是否处于服务端环境]
  30. ## 扩展标签
  31. + gv-id 定义页面ID,只能在html上
  32. ```
  33. <html gv-id="index"></html>
  34. ```
  35. + gv-src/gv-common 定义服务端渲染脚本
  36. ```
  37. //服务端执行index.js,执行完后去除该标签
  38. <script src="index.js" gv-src></script>
  39. //服务端执行index.js,执行完后保留该标签
  40. <script src="index.js" gv-src gv-common></script>
  41. //gv-src与gv-common 支持内联执行
  42. <script gv-src>
  43. </script>
  44. ```
  45. + gv-ignore标签,gv-ignore块下的标签不会被服务器渲染
  46. + class='gv-ignore' 含有class为gv-ignore的标签,属性不会被渲染[新版本已经作废]
  47. + gv-ignore='@|v-on' 含有gv-ignore为属性的标签内的属性,所在值不会被vue服务端渲染,"|" 隔开,如果留空则当前标签内所有属性均不会被渲染