Web前端开发网

fly63.com

首页 资源 工具 文章 教程 栏目
  • 在线搜索
  • 文章标签
  • 广告合作
  • 赞助一下
  • 关于我们
搜索

资源分类

AI智能 酷站推荐 招聘/兼职 框架/库 模块/管理 移动端UI框架 Web-UI框架 Js插件 Jquery插件 CSS相关 IDE环境 在线工具 图形动效 游戏框架 node相关 调试/测试 在线学习 社区/论坛 博客/团队 前端素材 图标/图库 建站资源 设计/灵感 IT资讯
网站收录 / 问题反馈

LiveVue

分享
复制链接
新浪微博
QQ 好友

扫一扫分享

网站地址:https://livevue.skalecki.dev
GitHub:https://github.com/Valian/live_vue
网站描述:让 Vue 组件跑在服务端
访问官网
GitHub
Livevue 是一个让你在 Phoenix LiveView 页面里直接使用 Vue 组件的库,实现端到端响应式协作。

LiveVue的正式发布,标志着 Phoenix LiveView 与 Vue.js 生态的深度融合。该版本允许开发者在 LiveView 页面中直接集成 Vue 组件,实现端到端的响应式协作,提升动态交互体验。通过无缝通信机制,LiveVue 在保持 LiveView 服务端响应式架构的同时,赋予前端更灵活的组件化能力,显著增强用户界面的构建自由度。这一创新为全栈开发者提供了高效、可维护的混合技术方案,适用于需要高实时性与丰富交互的应用场景。


核心理念

  • 后端状态在 LiveView:页面状态、数据流、事件处理全部由 Phoenix LiveView 管理。
  • 前端交互在 Vue:Vue 负责组件渲染、动画、拖拽、复杂表单等本地交互。
  • 双向同步:LiveView 的 assigns 自动变为 Vue props,Vue 事件可以回传服务器。

顺带提一下 Phoenix LiveView:它是一种“后端实时 UI 框架”。不需要写前端状态管理和 api,就能做出像 SPA 一样的实时网页。

LiveView 用 WebSocket 长连接 + dom diff,把服务器状态实时同步到浏览器,浏览器只负责渲染。LiveVue 就是在这个基础上,让 Vue 与 LiveView 协同工作。


核心特性

  • 端到端响应式:LiveView 的 assigns → Vue props,数据变化自动同步到前端。
  • 一行安装:通过 Igniter 安装程序自动安装 LiveVue、Vue、Vite,开箱即用。
  • 服务器端渲染 (SSR) Vue:首屏渲染由服务器处理,提高加载速度和 seo。
  • ~VUE Sigil:可作为 LiveView DSL 的替代方案,支持 VS Code 语法高亮。
  • Phoenix Streams 支持:实时列表、聊天、通知等场景高效渲染。
  • 插槽互操作性:LiveView 模板与 Vue slot 内容可以互传。
  • 文件上传组合式 API:useLiveUpload() 无缝集成 LiveView 上传功能与 Vue UI。
  • 全面表单处理:useLiveForm() 支持通过 Ecto changeset 在服务器端验证表单,UI 与逻辑统一。


使用场景

  • ✅ 后台管理系统 / CRUD 页面:表格增删改查、表单校验、权限控制,实时同步多人操作。
  • ✅ 实时看板 / Dashboard:监控面板、订单列表、在线用户统计,LiveView 自动推送更新。
  • ✅ 多人协作 / 实时数据流:工单系统、审批流程、聊天或通知,状态只有一份,冲突自然消失。
  • ✅ 复杂表单:多步骤表单、嵌套对象表单,服务端验证 + Vue UI,开发效率高。
  • ❌ 不适合:内容型官网、复杂动画/Canvas/离线 PWA 等前端主导场景。


工作原理

  • LiveView 渲染占位元素:输出 <div>,包含 props、事件、slot 信息。
  • 客户端挂载 Vue 组件:LiveVue Hook 读取数据,将 Vue 组件挂载到 DOM 上。
  • 服务端状态同步:LiveView assigns 更新 → data 属性更新 → Vue props 响应式更新。
  • 事件回传:Vue 内触发事件 → WebSocket → LiveView 处理 → DOM 差量更新。

整个流程依然跑在 LiveView 的单条 Socket 上,无需手写复杂 Hook。


快速上手

新建 Phoenix 1.8+ 项目:

mix archive.install hex igniter_new
mix igniter.new my_app --with phx.new --install live_vue

已有项目中安装:

mix igniter.install live_vue

安装完成后,自动配置 Vue、Vite、LiveVue Hook。


使用示例

LiveView 模板挂载 Vue 组件:

def render(assigns) do
  ~H"""
  <.vue
    v-component="Counter"
    v-socket={@socket}
    count={@count}
  />
  """
end

对应 Vue 组件(Counter.vue):

<script setup>
const props = defineProps<{ count: number }>()
</script>

<template>
  <p>当前计数:{{ props.count }}</p>
  <button phx-click="inc">+1</button>
</template>

这样,Vue 管理交互和 UI,LiveView 管理状态和事件,无需额外 API。

仅供个人学习参考/导航指引使用,具体请以第三方网站说明为准,本站不提供任何专业建议。如果地址失效或描述有误,请联系站长反馈~感谢您的理解与支持!

链接: https://fly63.com/nav/4864

更多»
热门资源
Vue
Vue.js是一套构建用户界面的渐进式JavaScript框架
官网
GitHub
react
Facebook开发的一款高效、灵活、声明式设计的JS库
官网
GitHub
AngularJS
Google推出有条理,可维护,易编程的MVVM框架
官网
GitHub
backbone
提供:模型、集合、视图,开发重量级的javascript应用的框架
官网
GitHub
jquery
一个快速、简洁的JavaScript代码库
官网
GitHub
zepto.js
一个轻量级的针对现代高级浏览器的JavaScript库
官网
GitHub
Ember
JavaScript MVC框架,它用来创建复杂的Web应用程序,消除了样板
官网
GitHub
nw.js
轻量级桌面应用开发的捷径
官网
GitHub
socket.io
一个WebSocket库,包括了客户端的js和服务器端的nodejs
官网
GitHub
nuxt.js
基于 Vue.js 的轻量级、服务端渲染 (SSR) 应用框架
官网
GitHub
Next.js
实现react的服务端渲染的框架
官网
GitHub
Electron
基于Chromium 和 Node.js, 使用 JavaScript, HTML 和 CSS 构建跨平台的桌面应用
官网
GitHub
类似于LiveVue的资源
Yew
Rust的前端开发框架,灵感来自Elm和ReactJS
官网
GitHub
ShareDB
用于并发编辑系统的前端数据库
点击进入
GitHub
Vike
一个模块化 Web 框架,定位为 Next.js 和 Nuxt 的替代品
官网
GitHub
Sencha Touch
一款基于HTML5的Mobile App框架,适用于Touch Web
官网
GitHub
Chromeless
基于 Headless Chrome 模式的 Web 自动化框架
官网
GitHub
es4x
一款支持EcmaScript &gt;=5应用的小型运行
官网
GitHub
Immutable.js
用于保证数据的不可变的js库
官网
GitHub
remotion
通过 React 以编程方式创建视频的框架
官网
GitHub
目录

手机扫一扫预览

》
分享组件加载中...
首页 技术导航 在线工具 技术文章 教程资源 前端标签 AI工具集 前端库/框架 实用工具箱 广告合作 关于我们

Copyright © 2018 Web前端开发网提供免费在线工具、编程学习资源(教程/框架/库),内容以学习参考为主,助您解决各类实际问题,快速提升专业能力。