组件化 Javascript 开发框架 Transformers

码农软件 · 软件分类 · JavaScript MVC 框架 · 2019-03-15 18:28:38

软件介绍

Transformers 是一套基于 Javascript(JS) 的已彻底组件化与模块化的开发框架,与 Web Components 理念一致。框架主要关注组件路由、组件消息传递和组件异步加载等,其中要解决的核心问题是组件间的解耦。

快速开始

引入 jQuery

<script src="http://javascript.u.qiniudn.com/jquery/1110.js"></script>

引入 Transformers 框架

<script src="http://javascript.u.qiniudn.com/jquery/transformers.js"></script>

开始使用

1. 编写组件容器

<!doctype html>
<html>
<head>
    <title>Hello World</title>
    <meta charset="utf-8" />
    <script src="http://javascript.u.qiniudn.com/jquery/1110.js"></script>
    <script src="http://javascript.u.qiniudn.com/jquery/transformers.js"></script>
</head>
<body>

<div id="content" class="TFComponent">
    <div>
        <!--
            指定 tf-action-click 属性会给此元素绑定 click 事件
            事件处理器是组件的 testAction 方法
        -->
        <button type="button" tf-action-click="test">测试</button>
    </div>

    <!-- content 模板的目标渲染节点 -->
    <div class="TFTarget-content"></div>

    <!-- 名为 content 的模板 -->
    <script type="text/html" class="TFTemplate-content">
    你好!世界!
    </script>
</div>

</body>
</html>

2. 创建应用程序

// 创建应用程序
TF.Core.Application.create({
    baseUrl: "./"
});

3. 创建组件 Home

// 定义名为 Home 的组件
TF.define('Home', {
    // 组件 DOM 准备完毕回调函数
    DomReady: function() {
        console.log('ready!');
    },

    // Action 是组件对外的接口
    testAction: function(args) {
        console.log('test!');

        // 渲染静态模板
        this.sys.renderStaticTemplate('content');

        this.renderOk();
    },

    // 组件私有方法,外部无法访问
    renderOk: function() {
        console.log('render OK!');
    }
});

4. 注册组件

// 添加名为 Home 的组件到组件管理器中
TF.Core.ComponentMgr.add([{
    name: 'Home',
    appendRender: false,
    lazyRender: false,
    hide: false,
    applyTo: '#content'
}]);

5. 启动应用程序

// 等待 DOM Ready
TF.ready = function(){
    // 启动应用程序
    TF.Core.Application.bootstrap();
};

实例

<!doctype html>
<html>
<head>
    <title>Hello World</title>
    <meta charset="utf-8" />
    <script src="http://javascript.u.qiniudn.com/jquery/1110.js"></script>
    <script src="http://javascript.u.qiniudn.com/jquery/transformers.js"></script>
</head>
<body>

<div id="content" class="TFComponent">
    <div>
        <!--
            指定 tf-action-click 属性会给此元素绑定 click 事件
            事件处理器是组件的 testAction 方法
        -->
        <button type="button" tf-action-click="test">测试</button>
    </div>

    <!-- content 模板的目标渲染节点 -->
    <div class="TFTarget-content"></div>

    <!-- 名为 content 的模板 -->
    <script type="text/html" class="TFTemplate-content">
    你好!世界!
    </script>
</div>

<script type="text/javascript">
// 创建应用程序
TF.Core.Application.create({
    baseUrl: "./"
});

// 定义名为 Home 的组件
TF.define('Home', {
    // 组件 DOM 准备完毕回调函数
    DomReady: function() {
        console.log('ready!');
    },

    // Action 是组件对外的接口
    testAction: function(args) {
        console.log('test!');

        // 渲染静态模板
        this.sys.renderStaticTemplate('content');

        this.renderOk();
    },

    // 组件私有方法,外部无法访问
    renderOk: function() {
        console.log('render OK!');
    }
});

// 添加名为 Home 的组件到组件管理器中
TF.Core.ComponentMgr.add([{
    name: 'Home',
    appendRender: false,
    lazyRender: false,
    hide: false,
    applyTo: '#content'
}]);

// 等待 DOM Ready
TF.ready = function(){
    // 启动应用程序
    TF.Core.Application.bootstrap();
};
</script>

</body>
</html>

本文地址:https://codercto.com/soft/d/1421.html

集创思维设计矩阵

集创思维设计矩阵

慈思远 / 电子工业出版社 / 2017-4 / 72.00元

《集创思维设计矩阵——写给互联网人的设计指南》总结了作者从业7年以来的设计经历,在大量企业所面对的设计问题基础上,提出了枪型思维,即如何给产品更准确的定位。 在定位准确的基础上加以设计,提出了设计中高维度融合低维度的设计思维,即设计者可以从商业逻辑推演到设计逻辑,让设计更加精确;又提出了设计和计算的博弈,指出在每一步创新的基础上,设计者一定要清晰地评判设计的代价。这样设计后的产品才是可以和企......一起来看看 《集创思维设计矩阵》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试