Angular React Vue 比较 – 组件篇

本文对比了Angular、React和Vue三种主流前端框架中组件的定义、使用和关键特性,强调了组件化开发在现代前端的重要性。后续章节将深入探讨组件的生命周期、属性传递和交互机制。
摘要由CSDN通过智能技术生成

Angular、React、Vue 都遵循组件开发标准,组件是构建用户界面(UI)的基础。

三大框架允许我们将 HTML 标签、CSS 和 JavaScript 组合成自定义组件,即 应用程序中可复用的 UI 元素

组件篇的系列文章我们将比较三大框架组件中的 JavaScript 部分,HTML 标签和 CSS会在模板篇中进行比较。

Angular 中组件的定义与使用

在 Angular 中,组件有以下几部分组成:

  • 一个 HTML 模板,用于声明页面要渲染的内容
  • 一个用于定义行为的 TypeScript 类
  • 一个 CSS 选择器,用于定义组件在模板中的使用方式
  • (可选)要应用在模板上的 CSS 样式

定义

在 Angular 中定义一个 HelloWorldComponent 组件的代码示例如下:

hello-world.component.ts 文件

import { Component } from '@angular/core';

@Component({
  // CSS 选择器
  selector: 'app-hello-world',
  template: `
    <p>Hello, world!</p>
  `
})
export class HelloWorldComponent {
  // JavaScript 逻辑代码可以写在这里
}

使用

在 Angular 在使用 HelloWorldComponent 组件示例如下:

app.module.ts 文件

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';
import { HelloWorldComponent } from './hello-world.component';

@NgModule({
  declarations: [
    AppComponent,
    HelloWorldComponent
  ],
  imports: [
    BrowserModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

app.component.ts 文件

import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  template: `
    <app-hello-world></app-hello-world>
  `
})
export class AppComponent {}

React 中组件的定义与使用

在 React 中,组件是一段可以使用标签进行扩展 的 JavaScript 函数。

定义

在 React 中定义一个 HelloWorld 组件的代码示例如下:

HelloWorld.js 文件

export default function HelloWorld() {
  // JavaScript 逻辑代码可以写在这里

  return (
    <p>Hello, World!</p>
  )
}

使用

在 React 中使用 HelloWorld 组件示例如下:

App.js 文件

import HelloWorld from './HelloWorld.js';

export default function App() {
  return (
    <HelloWorld />
  );
}

Vue 中组件的定义与使用

在 Vue 中使用构建步骤时,我们一般会将 Vue 组件定义在一个单独的 .vue 文件中,这被叫做单文件组件 (简称 SFC)。

定义

在 Vue 中定义一个 HelloWorld 组件的代码示例如下

HelloWorld.vue 文件

<script setup>
// JavaScript 逻辑代码可以写在这里
</script>

<template>
  <p>Hello, world!</p>
</template>

使用

在 Vue 中使用 HelloWorld 组件示例如下:

App.vue 文件

<script setup>
import HelloWorld from './HelloWorld.vue'
</script>

<template>
  <HelloWorld />
</template>

小结

在三大框架中,组件是为了在应用程序中可复用 UI 元素。无论使用哪个框架,组件化的开发才是当今前端开发的核心思想。

在接下来的章节中,我们将对组件的七个主题进行比较,它们分别是:

文章参考链接:

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值