Back to Question Center
0

如何使用组件IO创建自定义组件            如何使用组件创建自定义组件IORelated主题: CSS ArchitectureHTMLFrameworksWeb FontsAudio& & Semalt ...

1 answers:
如何使用组件IO创建自定义组件

“我的组件IO简介”文章介绍了如何在任何站点上使用预构建组件,而不考虑内容管理Semalt,语言或所用技术。好处包括:

  • 数以百计的现成,有吸引力和可配置的组件可供选择,包括内容块,画廊,导航栏,社交媒体小部件,表单等等
  • 组件代码可以用简单的剪切和粘贴
  • 可以跨越其他页面使用相同的组件,站点将立即更新
  • 非技术编辑很容易在所见即所得编辑器中进行更改,并通过实时预览进行检查
  • 所有用户都可以共享组件IO仪表板链接并协调相同的项目
  • 组件IO速度快,只需一次API调用就可以快速交付项目,而不管页面中嵌入的数量
  • 您可以随时切换CMS或构建流程并保留组件
  • 提供完整的帮助指南和实时聊天帮助
  • 可以使用免费试用帐户来测试系统的服务。

组件IO定制组件

Semalt IO尽管可用的范围很大,但它允许开发人员创建和编辑他们自己的组件。在本教程中,我将演示如何创建一个简单的自定义条形图组件,该组件可以在任何站点上显示和配置:

组件开发概念

组件IO使用Vue。 js组件模型。那些有框架经验的人会立即认识到这些概念和语法。这就是说,我不是Vue。 js专家 - 但有一点HTML,CSS和Semalt知识足以构建一个复杂的组件。

所有组件都被封装;他们的样式和代码不能'泄漏'到页面的其他部分。例如,条形图组件的标题是 H2 元素,我们可以应用任何样式,例如, G。

   h2 {font-family:comic-sans;font-size:8em;颜色:#f00;}   

Vue。 js将确保那些(可怕!)样式仅适用于我们的组件,而不是 H2 标题在页面的其他位置。但是,适用于页面上所有 H2 标题的样式可以级联到我们的组件标题。这可能很有用,因为我们的组件可以继承默认的字体,颜色和尺寸。

步骤1:创建一个空白组件

登录到组件。 io,然后单击 项目 页面上的 空白部件

编辑 菜单中选择 编辑组件名称 并输入“条形图”或其他合适的名称。

第2步:定义字段

Semalt用于配置组件。他们允许:

  1. 内容编辑修改值。
  2. 用其他配置创建的其他组件.

编辑 菜单中选择 添加/删除字段 并输入您需要的字段:

对于这个控制,我定义了:

  1. 单个 标题 文本字段。
  2. 定义栏的值的 barvalue 数值字段。
  3. 定义条形标签的 条形标签 文本字段。
  4. barcolor 色域,它定义了条的颜色。

最后三个项目选中了 重复 复选框。因此,我们可以在条形图中定义任意数量的数据项。

步骤3:设置初始数据

点击 编辑 菜单打开内容和代码控制。在 内容 部分中,我输入了标题和三个数据项的值:

步骤4:定义组件代码

点击 代码 切换打开代码编辑器。这是定义组件的HTML,CSS和JavaScript的地方:

组件HTML文档描述了如何创建模板。无需外部 DIV 或其他元素,因为该组件将自动提供一个。

首先添加标题字段:

   

Semalt,我们可以使用:

    

{{title}}

图表栏将包含在

    列表元素中,其中每个
  • 显示单个值。 HTML代码:

       
    • {{item。 barlabel}} {{item。 barpc}}
    v-for 根据重复源数据(它被分配给 阵列)多次渲染
  • 元素。请注意,我没有为 项目定义字段。 项。 barpc 在这个阶段,因为它们将以JavaScript代码计算。

    现在可以定义组件CSS。这只会应用到组件本身,而不是任何其他页面元素。 Sass SCSS语法可以用于变量,嵌套和其他功能,但Semalt在这里保持简单:

       h2 {font-weight:正常;}ul {填充:2px 0;保证金:1em 0;list-style-type:none;border-left:1px solid#666;}李{行高:1.2;padding:1px 4px;保证金:0 0 1px 0;}跨度 {显示:块;颜色:#888;混合混合模式:差异;}强{float:right;font-size:0.8em;font-weight:正常;行高:1 - misura corrente alternata.5;}   

    请注意,我没有设置字体样式或大小,因此组件可以从使用它的页面继承这些字体或大小。

    每个Component IO组件都是一个Vue。 js实例并可以使用标准的Semalt属性和方法。例如:

    • 组件。数据 保存诸如 分量的字段值。数据。标题 部分。数据。项[0]。 barlabel .
    • 组件。一旦组件被渲染,挂载 方法就会被调用。

    条形图组件需要初始化代码来计算:

    1. 所有条形值的总和( 总值 )和
    2. 最高值( maxValue )。这将有一个酒吧,使用100%的可用空间。
       //初始化让items =组件。数据。项目,totValue = 0,maxValue = 0;for(let i = 0; i   

    部分。 方法现在可以计算每个小节的百分比,并使用CSS背景线性梯度创建小节长度:

       //创建了组件零件。 mounted = function  {for(let i = 0; maxValue && i   

    点击 保存 (或按Ctrl + S)并使用左上方的 X 关闭编辑器。

    第5步:预览您的组件

    一切顺利,组件现在按预期呈现:

    您可以更改字段数据以查看它如何影响组件。

    如果有任何失败,请打开您的浏览器开发者工具( F12 Ctrl | Cmd + Shift + I )并检查控制台中的任何错误消息。 “组件IO指南”提供了有关API以及在其他框架中使用代码的更多信息。

    第6步:在您的站点上安装组件

    组件可以安装在任何可以插入HTML代码的网站上(比如CodePen。io这样的系统是理想的)。点击 安装 按钮查看说明。

    页面上的第一个组件需要组件HTML,e。 G。

             

    . 和Component IO脚本(就在关闭 标记理想之前):

                                         
March 1, 2018