vecty.js_基于 gopherjs 的一种类似 React 的开发框架

更新日期:2020年09月02日 投稿作者:分类目录网 围观人数:17074

vecty.js

vecty简介:基于 gopherjs 的一种类似 React 的开发框架

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 方法重新渲染此组件,界面上就能看到按钮上的文字被改变了。


声明:本站资源收集于网络,但不代表本站的观点和立场,具体内容可自行甄别,如果有侵权内容、不妥之处,请联系我们删除。敬请谅解!

Agile Lite:一个基于HTML5+CSS3+JS的移动应用开发框架

Agile Lite 是一个基于HTML5+CSS3+JS的移动应用开发框架,同时支持单页和多页模式,并提供无关UI和可扩展的框架结构. Agile Lite 是一个基于HTML5+CSS3+JS的移动应用开发框架,同时支持单页和多页模式,并提供无关UI和可扩展的框架结构 Agile Lite支持jQuery和Zepto双引擎,但是同时仅可以使用其中之一,建议使用jQuery Agile移动应用前端框架既解决了前端UI层的显示,耦合了高性能的UI展示效果,也提供

12个好用的BT种子搜索网站,你用过几个?

BT Kitty https://cnbtkitty.pw/ 专注于提供BT种子搜索和下载的网站,你可以在这里搜索和下载电影、剧集、音乐、图书、图片、综艺、软件、动漫、教程、游戏等资源,BT Kitty 可以说算得上一款BT种子搜索神器、下载利器。 BT Library https://btlibrary.xyz/ 索引了几千万千万BT种子,包括电影、剧

电脑怎么设置开机密码(电脑设置开机密码图文教程)

电脑怎么设置开机密码:   相信很多人都有不想给别人乱上自己的电脑的想法吧?电脑怎么设置开机密码呢?那么设置电脑开机密码是最好的办法了。如何设置开机密码?简单几步就能设置好咯!这里来演示一下XP系统和win7系统的开机密码设置方法。   除以上系统外,还将给大家带来windows10系统开机密码的设置方法

电脑没有声音怎么办?(电脑没有声音解决方法)

电脑没有声音怎么办?其实原因无非就2个,电脑硬件问题与软件问题。硬件问题主要是声卡坏了,或者输出声音接口损坏等,一般声卡硬件损坏很少,软件问题是比较常见的导致电脑没声音。那么如何判断是硬件问题还是软件问题呢?下面来分条详细说明。  一般处理电脑故障我们都是先软件后硬件的。如果您的电脑没有声音请尝试以下解决办法,一般是可以解决的. 电脑没有声音怎么办