返回

TypeScript + Vite + Vue3 + Element Plus 打造一个全栈应用

前端

    TypeScript + Vite + Vue3 + Element Plus 是一个强大的组合,可以帮助您快速构建现代化的 web 应用程序。

    ### 项目初始化

    ```
    # 使用 npm 初始化项目
    npm init vue@latest

    # 选择项目名称
    ? Project name: my-project

    # 选择项目类型
    ? Project type: default (babel, typescript)

    # 选择 UI 框架
    ? UI Framework: vue-router (official)

    # 选择组件库
    ? UI Library: element-plus

    # 选择状态管理库
    ? State Management: pinia

    # 选择 Linter
    ? Linter / Formatter: eslint

    # 选择测试框架
    ? Unit Testing: vitest
    ```

    ### 开发环境搭建

    ```
    # 安装依赖
    npm install

    # 运行开发服务器
    npm run dev
    ```

    ### 组件开发

    在 `src/components` 目录下创建组件文件,例如 `HelloWorld.vue`:

    ```html
    <template>
      <h1>Hello World!</h1>
    </template>

    <script>
    export default {
      name: 'HelloWorld',
    }
    </script>
    ```

    ### 数据绑定

    使用 `v-model` 指令可以实现组件数据和表单元素的双向绑定:

    ```html
    <template>
      <input v-model="message">
      <h1>{{ message }}</h1>
    </template>

    <script>
    export default {
      name: 'HelloWorld',
      data() {
        return {
          message: 'Hello World!'
        }
      }
    }
    </script>
    ```

    ### 事件处理

    使用 `v-on` 指令可以监听 DOM 事件并执行对应的 JavaScript 函数:

    ```html
    <template>
      <button v-on:click="handleClick">点击我</button>
    </template>

    <script>
    export default {
      name: 'HelloWorld',
      methods: {
        handleClick() {
          console.log('按钮被点击了!');
        }
      }
    }
    </script>
    ```

    ### 样式管理

    使用 `style` 标签或 CSS 预处理器(如 Sass、Less)可以为组件添加样式:

    ```html
    <style>
    h1 {
      color: red;
    }
    </style>

    <!-- or -->

    <style lang="sass">
    h1 {
      color: red;
    }
    </style>
    ```

    ### 路由配置

    使用 `Vue Router` 可以为应用程序配置路由:

    ```javascript
    import { createRouter, createWebHistory } from 'vue-router'

    const router = createRouter({
      history: createWebHistory(),
      routes: [
        {
          path: '/',
          component: HelloWorld
        },
        {
          path: '/about',
          component: About
        }
      ]
    })

    export default router
    ```

    ### 状态管理

    使用 `Pinia` 可以管理应用程序的全局状态:

    ```javascript
    import { createPinia } from 'pinia'

    const store = createPinia()

    export default store
    ```

    ### 结语

    希望这篇博文能够帮助您入门 TypeScript + Vite + Vue3 + Element Plus。有关更多信息,请参阅相关文档。