V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jiaoguan1688
V2EX  ›  程序员

请问大家关于 go 和 vue 的问题.

  •  
  •   jiaoguan1688 · 7 天前 · 1994 次点击

    因为我们是做 seo 的 请问,前端需要展示的数据用 gin 和模版渲染出来展示出来 涉及到注册,登录,下单等等,用 vue 来做前后端分离可以吗?

    有这么做过吗?本来打算用 gin 的模版渲染 全部梭哈,现在想改变思路用 vue 来做交互简单点 请问这样可以吗?

    20 条回复    2025-03-07 16:42:26 +08:00
    wunonglin
        1
    wunonglin  
       7 天前
    Vue: nuxt.js
    React: next.js
    Angular: analog.js

    元框架直接用这些就好,go 就老老实实做接口业务就行了
    wunonglin
        2
    wunonglin  
       7 天前
    业务不大的话,这些元框架也能胜任后台的业务,如果是简单业务,go 都不需要了
    jiaoguan1688
        3
    jiaoguan1688  
    OP
       7 天前
    @wunonglin 不大会 nuxt.js 所以想着 gin 来渲染 标题和内容 vue 做交互
    Vegetable
        4
    Vegetable  
       7 天前
    可以,如果两套页面有比较明确的边界,比如点击登录之后跳转到另一套页面,这么做没什么问题。如果要在两边来回跳,那还挺烦的,不过也只是麻烦点。

    这种需求我做过很多次,基于 Django Admin 这种 cms 开发的项目,需要复杂的自定义页面的时候,就难免要结合模板引擎和单页面应用。
    wunonglin
        5
    wunonglin  
       7 天前
    @jiaoguan1688 #3 随便看看就会了,什么框架都一样。这种需求用 gin 还会增加复杂度,搞得像是 php 一样
    thoo61871
        6
    thoo61871  
       7 天前 via iPhone
    用 AI 来做
    wogogoing
        7
    wogogoing  
       7 天前 via iPhone
    给 op 提供以下思路:
    1.如果前端同学愿意尝试且没有很重的历史负担,可以把 Vue 切换到 Nuxt.js ,用服务端渲染,有一定学习成本,但是还算可以控。
    2.如果历史负担很重,可以改为后端检测 UA ,把常见的 spider bot 加入进去,命中就返回 gin 渲染的模板。

    这两点可行性是没问题的,我司有两个项目正好是这种情况。
    5261
        8
    5261  
       7 天前
    @wunonglin Angular: analog.js 这个又是干啥的呢
    zhengfan2016
        9
    zhengfan2016  
       7 天前
    一种就是用 nuxtjs 之类的框架,还有一种就是 go 直接吐出 html ,vue 通过 cdn 引入,类似 php 那种
    yrzs
        10
    yrzs  
       7 天前   ❤️ 1
    laravel 一把锁
    iOCZS
        11
    iOCZS  
       7 天前
    你可以用 go 渲染简单的页面用作 SEO ,再用 vue 在客户端渲染最终页面。缺点是要做两套页面,简单页面和最终页面之间可能出现过渡间隙。优点是 SEO 可控,不需要框架支持。
    qxmqh
        12
    qxmqh  
       7 天前
    不是有这个框架吗 go+vue 的。https://github.com/flipped-aurora/gin-vue-admin
    kakki
        13
    kakki  
       7 天前
    这种任务建议 PHP 一把梭,赶时髦就 N?xt 系列.
    Razio
        14
    Razio  
       7 天前
    1. 前后分离 nuxt.js 进行 SSR 还原 SEO 信息,还要区分 client 渲染 server 渲染,学习成本多一些
    2. 依旧是 gin 模版渲染,不需要 SEO 的片段才使用用 vue 渲染,比如 createApp().mount('#custom-1') createApp().mount('#custom-2'),但是也会涉及一些打包构建、模版渲染的问题
    longzcxx
        15
    longzcxx  
       7 天前
    rails 一把梭
    jiaoguan1688
        16
    jiaoguan1688  
    OP
       7 天前
    研究了半天 头都大了
    jiaoguan1688
        17
    jiaoguan1688  
    OP
       7 天前
    @wogogoing 第二个思路 试试看 现在 go 渲染加 vue 很乱 一会儿就弄错了
    leokun
        18
    leokun  
       7 天前
    用 go 给 vue 做 ssg 或者 ssr 目前应该没有好的办法,目前我想到的很粗糙的办法是先用 https://github.com/antfu-collective/vite-ssg 把页面构建为多页的 html (带水合脚本),然后把需要替换的地方在 golang 替换

    不过用 nodejs 倒是有一大堆好用的,比如: https://astro.build/
    leokun
        19
    leokun  
       7 天前
    @leokun 因为现在前端的的框架都需要 nodejs 才能编译,比如源码是 jsx 、vue 、ts 的文件想要转为带内容 的 html ,必须要使用 nodejs 生态的工具,比如 webpack 、vite 。所以 op 想用 go 和 vue 同构 ssr 的技术,应该很难做到
    wunonglin
        20
    wunonglin  
       7 天前
    @5261 #8 nexi.js 是干嘛的它就是干嘛的。


    @jiaoguan1688 #17 放弃吧。真不如一步到位,昨晚到现在光看看文档练练手,现在都能上线了。😁
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2836 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 82ms · UTC 12:47 · PVG 20:47 · LAX 05:47 · JFK 08:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.