NET MVC中使用Element-Plus框架编写组件

一、目的

在NET MVC中使用Element-Plus编写可重复使用的组件。

二、准备工作

2.1 NET MVC项目

2.2 MVC项目中使用Element-Plus框架。不熟悉的可以参考此文章:

NET MVC中如何使用Element-Plus-CSDN博客

三、组件编写

3.1、新建一个MVC的部分视图页面,内容如下:

cs 复制代码
@{
    Layout = null;
}

<template id="workOrderStatus">
    <el-tag class="ml-2" :type="getStatusClass()" effect="dark" size="small">{{workOrder.StatusName}}</el-tag>
</template>

<script>
    var componentWorkOrderStatus = {
        template: '#workOrderStatus',
        props: ['data'],
        watch: {
            data(newVal, oldVal) {
                this.workOrder = newVal;
            }
        },
        data: function () {
            return {
                workOrder: this.data
            };
        },
        methods: {
            getStatusClass() {
                const { Status } = this.workOrder;
                switch (Status) {
                    case 99:
                        return 'success';
                    case 1:
                        return 'warning';
                    case -1:
                        return 'danger';
                    default:
                        return 'default';
                }
            }
        }
    };
</script>

3.2、在页面中引入组件并使用

在页面中使用Html.RenderPartial("~/Views/WorkOrder/Component/Status.cshtml");引入组件模板

cs 复制代码
Html.RenderPartial("~/Views/WorkOrder/Component/Status.cshtml");

然后在Vue中使用组件:

javascript 复制代码
const appData = {
    components: {
        'work-order-status': componentWorkOrderStatus
    },
    data() {
        return {
            loading: false,
            search: {
                Page: 1,
                PageSize: 20,
                Total: 0
            }
        };
    },
    mounted() {
    },
    methods: {
    }
};
const app = vueApp.create(appData);

在html使用组件:

html 复制代码
<work-order-status :data="scope.row"></work-order-status>

到此,在MVC中编写可重复使用的组件就告一段落。这样我们就可以在列表或者详情页面都使用同一个状态组件,避免状态显示逻辑变更的时候,重复修改不同页面。

相关推荐
鹿屿二向箔11 小时前
基于SSM(Spring + Spring MVC + MyBatis)框架的汽车租赁共享平台系统
spring·mvc·mybatis
假装我不帅14 小时前
asp.net framework从webform开始创建mvc项目
后端·asp.net·mvc
鹿屿二向箔16 小时前
基于SSM(Spring + Spring MVC + MyBatis)框架的咖啡馆管理系统
spring·mvc·mybatis
九鼎科技-Leo1 天前
什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
windows·后端·c#·asp.net·mvc·.net
希忘auto1 天前
详解Java之Spring MVC篇二
java·spring·mvc
LilKevinRay2 天前
【SpringMVC】记录一次Bug——mvc:resources设置静态资源不过滤导致WEB-INF下的资源无法访问
java·笔记·mvc·bug
鹿屿二向箔2 天前
基于 JAVASSM(Java + Spring + Spring MVC + MyBatis)框架开发一个九宫格日志系统
java·spring·mvc
Ares-Wang2 天前
ASP.NET Core 路由规则,自定义特性路由 ,IActionConstraint 路由约束 总结 mvc
后端·asp.net·mvc
技术拾荒者3 天前
.net core mvc 控制器中页面跳转
后端·c#·asp.net·mvc·.netcore
吴冰_hogan3 天前
spring-mvc源码
java·spring·mvc