首页 > web前端 > js教程 > 正文

编写您的第一个 Web 组件(学习 Modulo.js - 第 f 部分

王林
发布: 2024-09-06 06:40:02
原创
1127 人浏览过

?欢迎所有新订阅者和返回的组件编码者!我即将开始一个新的 10 部分教程系列。虽然我的其他教程使用 Modulo.js 构建特定的、有趣的小应用程序,例如口袋妖怪舞会、复古挤压文本编辑器或视频游戏画廊,但本教程系列将建立在基本原则上,从第一部分开始:什么是 Web 组件吗?

HTML 和 CSS 之后的下一步

您是否刚刚学习了 HTML 和 CSS 的基础知识,并对下一步感到好奇,想要构建更大、更完整的 Web 应用程序?或者,您已经是一名 Web 开发人员或 JavaScript 专业人士,只想构建快速、轻量级的 Web 应用程序,而无需过多的臃肿、工具或过多的依赖项?

如果是这样,Web Components 就适合您!它们允许您创建可重用的代码部分。通过学习本教程,您将学习如何修复重复的、难以维护的 HTML 和 CSS。它还只使用最少的工具和库,这意味着您不需要 Node.js、NPM 或大量的 node_modules。它还可以让您磨练现代前端 Web 开发技能:在本系列的后续教程中,您将学习诸如 slotsshadowDOMprops 等概念、模板状态管理等等!这些概念可以转移到使用其他流行框架,而 Modulo 简单的声明性方法可能是一种更有吸引力的方式来学习核心概念,而无需陷入复杂的设置。

模数框架简介

什么是 Modulo? ​​Modulo 是一个用 JavaScript 编写的免费软件/开源、小而强大的 Web 框架。它没有依赖项,并使用 HTML 语法,因此可以在页面加载时自行设置,无需 Node.js 或编译。您可以在纯 HTML“静态站点”(例如,当您在目录中组装 HTML、CSS 和其他静态资源以在静态 Web 主机上启动时)或任何其他现有 Web 应用程序中使用它。本教程是关于使用 Modulo 作为构建 Web 组件的工具。

第 1 部分介绍

Writing your first web component (Learn Modulo.js - Part f

在第 1 部分中,我们将学习如何构建一个简单的“Hello World”组件。在以后的部分中,我们将学习如何添加样式、道具、状态、响应式表单、插槽、API 等等,但现在,我们将从基础知识开始:超越基本的 HTML 和通过使用 Modulo 创建和重用 Web 组件来实现 CSS。

第 1 步:包含模数

在使用 Modulo 之前,我们必须包含该框架。整个框架包含在“Modulo.js”中,该文件包含 2000 行 JavaScript。 这意味着启动 Modulo 项目实际上不需要浏览器和编辑器之外的任何依赖项因此,只需打开一个空白 HTML 文件并开始使用以下非常简单的起始代码:

<template Modulo>
    <!-- our stuff will go here eventually... -->
</template>
<script src="https://unpkg.com/mdu.js"></script>
登录后复制

第 2 步:定义您的第一个组件

现在我们已经包含了它,我们可以开始编写模定义并一般使用该框架。我们通过创建 Modulo 来定义我们的第一个组件。定义,并在其中放入一个

<Component name="HelloWorld">
    <Template>
        Hello <strong>Modulo</strong> World!
    </Template>
</Component>
登录后复制

这个“模板”因此成为我们组件的“模板”:每次我们的组件出现在页面上时,它都会在其中呈现给定的模板。

第 3 步:使用您的第一个组件

定义后,您可以通过引用其名称来使用组件,就好像它是纯 HTML 标签一样:

<x-HelloWorld></x-HelloWorld>
登录后复制

这将导致屏幕上显示以下内容:

你好世界!

请注意,注册后,组件可以到达普通 HTML 标签可以到达的任何地方,并且也可以以相同的方式使用 CSS 进行样式设置。换句话说,创建组件就像创建一个全新类型的 HTML 标签,可以在任何地方使用,就像原来的

等 HTML 标签一样。例如,我们可以将我们的组件到其他标签中,如下所示:
<p>One time: <x-HelloWorld></x-HelloWorld></p>
<div>Another time: <x-HelloWorld></x-HelloWorld></div>
登录后复制

第 4 步:增强您的第一个组件

如果我们愿意,“模板”可以有更高级的代码。我们可以混合使用 CSS 和类。例如:

<Component name="HelloWorld">
    <Template>
        Hello <strong style="color: goldenrod">Modulo</strong> World!
        <p class="neat">Any HTML can be here!</p>
    </Template>
</Component>
登录后复制

请注意,如果您在 CSS 中使用 .neat 选择器,这将应用于该 span 元素,就像正常情况一样。

- 完整示例

综合起来,我们得到以下结果。请注意如何使用和重复使用我们的自定义 Web 组件,就好像它是普通的 HTML 标签一样:

<template Modulo>
    <Component name="HelloWorld">
        <Template>
            Hello <strong style="color: goldenrod">Modulo</strong> World!
            <p class="neat">Any HTML can be here!</p>
        </Template>
    </Component>
</template>
<script src="https://unpkg.com/mdu.js"></script>
<h1>Learning Modulo Part 1</h1>
<h2>Your first Web Component</h2>
<main style="border: 3px solid violet; padding: 10px; margin: 10px; border-radius: 3px">
    <section>One time: <x-HelloWorld></x-HelloWorld></section>
    <div>Another time: <x-HelloWorld></x-HelloWorld></div>
</main>
登录后复制

Conclusion

That's all for Part 1! There's another 9 parts to go, so follow for more tutorials like this, and, as always, feel free to ask questions or suggestions in the comments. Next time... we're getting stylish!

以上是编写您的第一个 Web 组件(学习 Modulo.js - 第 f 部分的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!