vecty.js

编程之家收集整理的这个编程导航主要介绍了vecty.js编程之家,现在分享给大家,也给大家做个参考。

vecty.js 介绍

gopherjs 是把 go 编译为 js 的工具。 vecty 是基于 gopherjs 的一种类似 react 的开发框架。

安装 gopherjs 和 vecty

go get -u github.com/gopherjs/gopherjs

go get -u github.com/gopherjs/vecty

vecty 自带的例子在 example 目录,有 todomvc 和 markdown 编辑器。

简单的例子

package main

import (

"strconv"

v "github.com/gopherjs/vecty"

"github.com/gopherjs/vecty/elem"

"github.com/gopherjs/vecty/event"

)

func main() {

v.SetTitle("title message swt")

v.RenderBody(&MyComponent{})

}

type MyComponent struct {

v.Core

btnCount int

}

func (mc *MyComponent) onButtonClick(e *v.Event) {

println("click my component button")

mc.btnCount++

v.Rerender(mc)

}

func (mc *MyComponent) Render() v.ComponentOrhtml {

return elem.Body(

elem.Button(

v.Markup(

event.Click(mc.onButtonClick),

),

v.Text("btn"+strconv.Itoa(mc.btnCount)),

)

}

运行它

在 $GOPATH/src/ele/gopherjs/t1 文件写下这个文件,命名为 t1.go。然后 cd 到 t1 文件夹,运行命令 gopherjs serve,将会在 localhost:8080 运行服务,使用浏览器访问 http://localhost:8080/ ,则可以查看运行结果。

解释

这个例子中,定义了组件 MyComponent,需要内嵌 vecty.Core 结构,实现 vecty.Component 接口要求的 Render 方法。

Render 方法负责构建代表组件的 html。

再看 main 方法,调用 vecty.SetTitle 方法设置标题,调用 vecty.RenderBody(&MyComponent{}) 方法把 MyCompoent 组件渲染为文档的 body。

回到 MyComponent 的 Render 方法,在 Button 内包含 Markup, Markup 内包括 event.Click,给 Button 附加了 click 事件处理函数 onButtonClick。

事件处理函数 onButtonClick 修改了此组件的 btnCount 字段,然后调用 vecty.Rerender 方法重新渲染此组件,界面上就能看到按钮上的文字被改变了。

GitHub:https://github.com/gopherjs/vecty

网站描述:基于 gopherjs 的一种类似 React 的开发框架

vecty.js

官方网站:

小编说

以上是编程之家为你收集整理的vecty.js全部内容。

如果觉得编程之家网站内容还不错,欢迎将编程之家推荐给好友。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


johnny-five,Bocoup 的 JavaScript 机器和物联网编程框架
WePY,一款让小程序支持组件化开发的框架
Deep playground,神经网络的交互式可视化,使用d3.js和TypeScript编写
ShareDB,用于并发编辑系统的前端数据库
RxJS,RxJS 是使用 Observables 的响应式编程的库
egg-react-ssr,最小而美的Egg + React + SSR 服务端渲染应用骨架
Avalon.js,迷你, 易用 ,高性能 的前端MVVM框架
d3-dag,用于可视化有向无环图的布局算法
Guess.js,Google的数据驱动改进前端体验的工具库
hyperapp,创建前端应用的 1 KB 的 JavaScript 库
ITPUB,中国专业的IT技术社区
HTTPie,一个 HTTP 的命令行客户端工具
Inferno,快速、类React风格的js用户界面库
Quasar,基于Vue构建响应式网站和混合移动端 APP
dva, 基于 React 和 redux 的轻量级框架配合 umi 使用后更是降低为 0 API
graphql-yoga,graphql-yoga 全功能的GraphQL服务器,专注于简单的设置,性能和卓越的开发者体验
Next.js,实现react的服务端渲染的框架
IronJS,一个.NET的JavaScript实现
mpvue,基于 Vue.js 的小程序开发框架
react,Facebook开发的一款高效、灵活、声明式设计的JS库