asm-dom
美国
程序代码 框架/库

asm-dom

一个极小的WebAssembly虚拟DOM专注于性能

爱站权重:PC 百度权重移动 百度移动权重
其他站点: GitHub

用于构建C ++ SPA的最小WebAssembly虚拟DOM(单页面应用程序) ,您可以使用Emscripten在C ++中编写整个SPA并将其编译为WebAssembly(或asmjs作为后备),asm-dom将为您调用DOM API。

asm-dom是一个低级虚拟DOM库。 最初,asm-dom诞生于在一个不是游戏,VR,AR或图像/视频编辑的常见用例中测试WebAssembly强大功能的想法。asm-dom并非在ism中完全发展。与DOM的所有交互都是用JavaScript编写的。这是一个很大的缺点,因为js和WASM之间的绑定开销,在未来asm-dom将更加强大,无论如何结果是令人满意的。

例子

#include "asm-dom.hpp"

using namespace asmdom;

int main() {
Config config = Config();
init(config);

// asm-dom can be used with a JSX like syntax thanks to gccx
VNode* vnode = (

bool {
emscripten::val::global("console").call("log", emscripten::val("clicked"));
return true;
}}
>
This is bold
and this is just normal text
I'll take you places!

);

// Patch into empty DOM element – this modifies the DOM as a side effect
patch(
emscripten::val::global("document").call(
"getElementById",
std::string("root")
),
vnode
);

// without gccx
VNode* newVnode = h("div",
Data(
Callbacks {
{"onclick", [](emscripten::val e) -> bool {
emscripten::val::global("console").call("log", emscripten::val("another click"));
return true;
}}
}
),
Children {
h("span",
Data(
Attrs {
{"style", "font-weight: normal; font-style: italic"}
}
),
std::string("This is now italic type")
),
h(" and this is just normal text", true),
h("a",
Data(
Attrs {
{"href", "/bar"}
}
),
std::string("I'll take you places!")
)
}
);

// Second `patch` invocation
patch(vnode, newVnode); // asm-dom efficiently updates the old view to the new state

return 0;
};

数据统计

数据评估

asm-dom浏览人数已经达到7,如你需要查询该站的相关权重信息,可以点击"爱站数据""Chinaz数据"进入;以目前的网站数据参考,建议大家请以爱站数据为准,更多网站价值评估因素如:asm-dom的访问速度、搜索引擎收录以及索引量、用户体验等;当然要评估一个站的价值,最主要还是需要根据您自身的需求以及需要,一些确切的数据则需要找asm-dom的站长进行洽谈提供。如该站的IP、PV、跳出率等!

关于asm-dom特别声明

本站东辰资源网提供的asm-dom都来源于网络,不保证外部链接的准确性和完整性,同时,对于该外部链接的指向,不由东辰资源网实际控制,在2021年10月5日 下午3:56收录时,该网页上的内容,都属于合规合法,后期网页的内容如出现违规,可以直接联系网站管理员进行删除,东辰资源网不承担任何责任。

相关导航

暂无评论

暂无评论...