如何在 Vue 3 中使用 Ant Design

发布时间:2023-07-04 17:00

Ant Design 是一个开源库,可让您创建吸引人的响应式网站。如果您想使用经过充分测试且易于学习的框架,那么它是您下一个项目的绝佳选择。

另一方面,Vue.js 是一个用于创建用户界面的渐进式框架。它旨在易于学习,同时具有灵活性和可定制性。将这两者结合使用可以让您比以往更快地创建响应式网站。

Ant Design 和 Vue 3 中包含的 Composition API 使得在编写有限代码的同时创建美观、响应迅速且可扩展的应用程序变得简单。

在这个简短的指南中,我们将了解如何在 Vue 3 应用程序中使用 ant-design-vue 包以及如何使用 Ant 图标系统。

  • 入门

    • 创建一个新的 Vue 3 应用程序

    • 安装 ant-design-vue

  • Ant Design 组件

  • 表单处理

  • 蚂蚁设计图标

入门

还值得一提的是,这里描述的所有方法都适用于使用 Vue CLI 和 Vite 生成的 Vue 3 项目。

创建一个新的 Vue 3 应用程序

让我们开始运行以下命令来创建一个新的 Vue 3 应用程序:

vue 创建我的应用
# 或者 Vite
npm 初始化vue@3

如果您使用的是 Vue CLI,请务必选择 Vue 3 作为您的首选预设,如下面的屏幕截图所示:

安装 ant-design-vue

您可以使用以下命令轻松地将 ant-design-vue 包添加到您的 Vue 3 项目中:

npm 安装 ant-design-vue
# 或者
纱线添加 ant-design-vue

一旦安装完成,我们就可以开始在我们的项目中注册它了。

一种方法是在我们的项目中全局注册包,以便我们可以从任何地方引用它的组件。Bgsub在线抠图(bgsub.cn),原画抠图换背景免费保存,最高支持4096x4096分辨率!这可以通过src/main.js使用以下代码更新入口文件来实现:

从“vue”导入 { createApp };
从“./App.vue”导入应用程序;
​
从“ant-design-vue”导入 Antd;
导入“ant-design-vue/dist/antd.css”;
​
const app = createApp(App);
app.use(Antd).mount("#app");

这样,我们就可以在我们的应用程序中开始使用它的组件,而无需进行任何额外的导入:

<!-- 组件/Sample.vue -->
<模板>
  <a-button type="primary">主按钮</a-button>
  <a-button>默认按钮</a-button>
  <a-button type="dashed">虚线按钮</a-button>
</模板>

您还可以按需导入单个组件:

<!-- 组件/Sample.vue -->
<模板>
  <div>
    <Button type="primary">主按钮</Button>
    <Button>默认按钮</Button>
    <Button type="dashed">虚线按钮</Button>
  </div>
</模板>
​
<脚本设置>
从“ant-design-vue”导入{按钮};
导入“ant-design-vue/dist/antd.css”;
</脚本>

您可能已经注意到,我们还将 Ant Design CSS 文件导入到这个单一文件组件中,并且对我们所有的组件文件都做同样的事情是没有意义的。打包34款必备神器,全是电脑必装软件,系统优化办公有这些足够了!为了解决这个问题,只需将 Ant Design CSS 文件导入到src/main.js文件中,文件内容如下所示:

从“vue”导入 { createApp };
从“./App.vue”导入应用程序;
​
导入“ant-design-vue/dist/antd.css”;
​
createApp(App).mount("#app");

为避免进行额外的导入,我们假设 ant-design-vue 已在本文前面的代码示例中全局注册。

Ant Design 组件

Ant Design 组件套件包括几个元素,如按钮、列表、卡片等等,它们都有不同的颜色和大小。图标也可以在主界面以及其他组件中使用。河马视频App,免登录影视追剧丝滑看片,已解锁会员稳定无广告观影!但是,让我们开始探索基础知识,同时将自定义 Vue 方法和响应式数据附加到它们:

<模板>
  <div>
    <一行>
      <a-col span="12">
        <div v-for="(alert, i) in alerts" :key="i">
          <警报
            :message="警报 + '消息'"
            description="Lorem ipsum dolor sit amet."
            :type="警报"
          />
        </div>
      </a-col>
      <a-col span="12">
        <a-button type="primary" @click="message = 'Hello!'">
          {{ 信息 }}
        </a-按钮>
        <a-骨架头像 :paragraph="{ rows: 4 }" />
      </a-col>
    </a-row>
  </div>
</模板>
​
<脚本设置>
从“vue”导入 { ref };
​
const alerts = ref(["success", "info", "warning", "error"]);
const message = ref("点击我!");
</脚本>

上面的代码示例演示了如何使用 Vue 3 设置糖语法进行简单的迭代以及将自定义事件附加到 ant-design-vue 组件。我们开发了一个双列网格系统,其中第一列显示一个按钮和一个骨架加载器组件,而第二列基本上遍历我们的警报数组并使用它们的数据来呈现自定义警报组件。

如果我们运行我们的应用程序,我们将得到以下结果:

表单处理

处理表单数据是任何应用程序中必不可少的操作。下面是一个如何使用 ant-design-vue 创建基本表单组件并处理其数据的示例:

<模板>
  <div>
    <a-form
      :model="formData"
      名称="基本"
      自动完成=“关闭”
      @finish="onSubmit"
      @finishFailed="onError"
    >
      <一个表单项
        标签="用户名"
        名称="用户名"
        :rules="[{ required: true, message: '请输入您的用户名!' }]"
      >
        <a-input v-model:value="formData.username" />
      </a-form-item>
​
      <一个表单项
        标签="密码"
        名称="密码"
        :rules="[{ required: true, message: '请输入您的密码!' }]"
      >
        <a-input-password v-model:value="formData.password" />
      </a-form-item>
​
      <a-form-item name="remember" :wrapper-col="{ offset: 8, span: 16 }">
        <a-checkbox v-model:checked="formData.remember">
          记得我
        </a-复选框>
      </a-form-item>
​
      <a-form-item :wrapper-col="{ offset: 8, span: 16 }">
        <a-button type="primary" html-type="submit">继续</a-button>
      </a-form-item>
    </a-form>
  </div>
</模板>
​
<脚本设置>
从“vue”导入 { ref };
​
常量 formData = ref({
  用户名: ””,
  密码: ””,
  记住:真的,
});
​
const onSubmit = async (_formData) => {
  console.log("表单提交!:", _formData);
  const response = await fetch("https://some.api/process-form", {
    方法:“POST”,
    正文:_formData,
  });
};
​
常量 onError = (errorInfo) => {
  console.log("失败:", errorInfo);
};
</脚本>

在上面的代码中,我们定义了一个响应式对象,formData带有一些默认的空字符串,我们还使用v-model表单绑定将此数据绑定到我们的 ant-design-vue 表单输入组件。我们还创建了一个自定义函数onSubmit并将其附加到我们的 ant-design-vue 表单组件,以将我们的 formData 提交给一些虚构的 API 进行处理,以及一个onError用于处理在验证表单时发生的任何错误的函数。

此外,此代码示例还展示了 ant-design-vue 组件中包含的自定义属性如何简化表单验证过程并使其可访问。


超过 20 万开发人员使用 LogRocket 来创造更好的数字体验了解更多 →


以下是我们运行应用程序时表单的输出:

如果你想在 Vue 3 中创建复杂的表单,你还应该阅读这篇关于 v-model 的文章。

蚂蚁设计图标

图标在使应用程序设计更加丰富和有吸引力方面发挥着重要作用。Ant Design 系统是有意识的。

Ant 设计团队还开发了一个外部包,可让您快速向应用程序添加丰富的图标,包括轮廓、实体甚至双色调图标。

你可以很容易地在你的 Vue 项目中安装图标包:

npm install @ant-design/icons-vue

这是我们如何导入三种不同的火箭图标样式的示例:

<模板>
  <div>
    <火箭概述/>
    <装满火箭的/>
    <rocket-two-tone two-tone-color="#eb2f96" />
  </div>
</模板>

<脚本设置>
进口 {
  火箭概述,
  火箭填充,
  火箭双音,
} 来自“@ant-design/icons-vue”;
</脚本>

运行此代码会产生以下结果:

要添加额外的交互,我们还可以将自定义旋转和旋转属性应用于任何图标。

<模板>
  <div class="center">
    <rocket-two-tone two-tone-color="#eb2f96" :rotate="50" />
    <reload-outlined spin />
  </div>
</模板>
​
<脚本设置>
从“@ant-design/icons-vue”导入 { RocketTwoTone, ReloadOutlined };
</脚本>

这导致以下输出:

结论

Ant Design 是一款出色的工具,可以轻松创建网站。它是一个适应性很强的框架,允许您创建具有很大灵活性的简单网站。在整篇文章中,我们研究了如何在 Vue 3 中使用 ant-design-vue 包。我们还讨论了如何使用 ant-icon 以及如何处理基本的表单提交。

ant-design-vue 包的文档页面是了解所提供的所有组件的绝佳起点

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号