自定义组件的注册和生命周期定义

这一节介绍了如何注册一个自定义组件,每个组件生命周期是怎么样的

注册element

创建一个element前,确保已经为Rosetta注册了这个类型的element。 可以为element类设置以下内容:

注册接口如下:

Rosetta({
    is: 'r-newelement', // 注册接口唯一必填项
    properties: {
        aaa: { // 设置默认值
            type: Array,
            value: [1,2,3,5]
        },
        bbb: Number //不设置默认值的简约写法
    },
    foo: 'dsd',
    po: function() {
        // xxx
    }
});

生命周期

组件化和模块化是常常提到的用于优化代码组织形式的方式,但是有时候大家会模糊这两者的差别。模块化更偏向一种物理的组织;而组件化则需要能满足功能明确、接口清晰、从创建到销毁完整进化能力。 因此生命周期是组件化的一大特征,webcomponents标准定义了四个阶段,Rosetta为了更方便使用,在实现标准定义的基础上扩展了生命周期

host的理解和使用

:host是为在css设置shadow root的样式,编译阶段会处理为此element类型的class

声明JS的依赖

<element></element>中使用<script type="text/javascript" src="xxx.js"></script>引入其他JS依赖

<template>
    <script type="text/javascript" src="xxx.js"></script>
    <r-aaa>
        这是一个组件定义时使用其他自定义组件的例子
    </r-aaa>
</template>

声明三方组件依赖

<template></template>中使用,<link rel="import" type="text/html" href="r-aaa.html">,来表示当前组件依赖的其他自定义组件

<template>
    <link rel="import" type="text/html" href="r-aaa.html">
    <r-aaa>
        这是一个组件定义时使用其他自定义组件的例子
    </r-aaa>
</template>

发现了问题或想要贡献?来 Github 和Rosetta联系或者Fork吧!: /docs/guide/life.md