Stenciljs 学习之搭建项目

简介: Stencil 是一个生成 Web Components(更确切地说,是自定义元素)的编译器。Stencil 将最流行的框架的最佳概念结合到一个简单的构建时工具中。学习一个框架肯定是重创建项目开始啦!现在就让我们一起学习一下怎么创建项目吧。

框架介绍

stenciljs 是用于构建可重用、可扩展的设计系统的工具链。生成在每个浏览器中运行的小型、超快且 100% 基于标准的 Web Component。

更对介绍请参考官方网站

创建项目

使用脚手架创建项目

pnpm create stencil #如下图

create-1.png
create-2.png
create-3.png

使用其它的包管理器,

npm init stencil

yarn create stencil

项目目录

create-4.png

创建组件

pnpm generate web-text #web-text是组件名

命令执行后,如下图

create-5.png

确定后,如下图
create-6.png

创建组建后的目录如下图

create-7.png

构建和测试

pnpm run start #包含运行测试 
pnpm run build #构建组件

pnpm run start之后的样子

create-8.png

组件说明

使用tsx 进行开发,类似react 的生命周期模型,类似ng 的开发方式(装饰器,注解。。。)

import { Component, Prop, h } from '@stencil/core';
import { format } from '../../utils/utils';

@Component({
  tag: 'my-component', // 组件名称
  styleUrl: 'my-component.css',
  shadow: true,
})
export class MyComponent {
  /**
   * The first name
   */
  @Prop() first: string;

  /**
   * The middle name
   */
  @Prop() middle: string;

  /**
   * The last name
   */
  @Prop() last: string;

  private getText(): string {
    return format(this.first, this.middle, this.last);
  }

  render() {
    return <div>Hello, World! I'm {this.getText()}</div>;
  }
}

Css 样式

div {
   
   
    display: block;
    font-size: 30px;
    background-color: blueviolet;
    color: white;
}

改后的效果

create-9.png

结束语

第一部分至此结束了。

相关文章
|
JavaScript 前端开发 关系型数据库
和chatgpt学架构01-搭建项目脚手架
和chatgpt学架构01-搭建项目脚手架
|
机器学习/深度学习 存储 人工智能
Gradio入门到进阶全网最详细教程[一]:快速搭建AI算法可视化部署演示(侧重项目搭建和案例分享)
Gradio入门到进阶全网最详细教程[一]:快速搭建AI算法可视化部署演示(侧重项目搭建和案例分享)
|
6月前
|
Web App开发 运维 前端开发
从0开始搭建一个前端项目的架子
从0开始搭建一个前端项目的架子
71 1
|
7月前
|
Oracle Java 关系型数据库
搭建Java开发天堂:构建理想的开发环境
搭建Java开发天堂:构建理想的开发环境
94 1
搭建Java开发天堂:构建理想的开发环境
|
Ubuntu 开发工具 数据安全/隐私保护
C++项目实战-环境的搭建
C++项目实战-环境的搭建
125 0
|
消息中间件 Dubbo NoSQL
【e3项目学习一】——SSM框架搭建小总结
业余时间,将e3的项目(针对于dubbo框架以及redis、nginx、fastdfs、消息队列等技术点)进行了一个前期学习,搭建了ssm的框架,并将其上传到了我的gethub上面(单击连接访问我的github,地址:连接),以后再做相关项目的时候就可以直接拿来用了~
|
JavaScript Shell 开发工具
使用vuepress从零开始搭建我的技术文档|已部署到线上
几天前为了深入学习JS我手写了一个JS工具库,并且发布到了npm上 我把具体步骤,从零搭建再到发布上线的全部细节都写在这这一片文章上了:手写了一个JS工具库并发布到npm 既然已经写了JS工具库,那必须要有文档呀,要不然谁知道怎么使用!!! 所以今天这篇文章就介绍一下怎么使用vuepress2.x搭建一个文档,内容不深,小白也能看懂,因为我只是小小的写了一下 ^_^嘿嘿 文档效果可以点击此处查看☞:LearnJTs文档
673 1
使用vuepress从零开始搭建我的技术文档|已部署到线上
|
移动开发 前端开发 JavaScript
案例开发-前端环境搭建| 学习笔记
快速学习案例开发-前端环境搭建。
案例开发-前端环境搭建| 学习笔记
|
存储 数据采集 SQL
环境篇之项目架构|学习笔记
快速学习环境篇之项目架构
环境篇之项目架构|学习笔记
|
canal BI API
搭建项目环境(准备工作) | 学习笔记
快速学习搭建项目环境(准备工作)
搭建项目环境(准备工作) | 学习笔记