让前端飞

Angular React Vue 比较 – 组件篇

2024-02-21  本文已影响0人  比较编程网

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

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

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

Angular 中组件的定义与使用

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

定义

在 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 元素。无论使用哪个框架,组件化的开发才是当今前端开发的核心思想。

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

文章参考链接:

上一篇 下一篇

猜你喜欢

热点阅读