一套基于Material规范和 Blazor交互能力的基础组件库

一套基于Material规范和 Blazor交互能力的基础组件库

2022-10-09 0 1,204
资源编号 44090 最近更新 2022-10-09
¥ 0人民币 升级VIP
立即下载 注意事项
下载不了?请联系网站客服提交链接错误!
增值服务: 安装指导 环境配置 二次开发 模板修改 源码安装

本期推荐的是一个基于Material设计规范和BlazorComponent的交互能力提供标准的基础组件库——MASA Blazor。

一套基于Material规范和 Blazor交互能力的基础组件库

MASA Blazor是基于Material设计规范和BlazorComponent的交互能力提供标准的基础组件库。提供如布局、弹框标准、Loading、全局异常处理等标准场景的预置组件。从更多实际场景出发,满足更多用户和场景的需求,最大的减少开发者的时间成本。

功能特性

  • 使用 C# 代替 JavaScript 来创建信息丰富的交互式 UI
  • 共享使用 .NET 编写的服务器端和客户端应用逻辑
  • 将 UI 呈现为 HTML 和 CSS,以支持众多浏览器,其中包括移动浏览器
  • 与新式托管平台(如 Docker)集成
  • 使用 C# 代替 JavaScript 来编写代码
  • 利用现有的 .NET 库生态系统
  • 在服务器和客户端之间共享应用逻辑
  • 受益于 .NET 的性能、可靠性和安全性
  • 在 Windows、Linux 和 macOS 上使用 Visual Studio 保持高效工作
  • 以一组稳定、功能丰富且易用的通用语言、框架和工具为基础来进行生成

快速使用

依赖环境

  • 安装.NET SDK 6.0
  • 安装Visual Studio Code或Visual Studio 2022

开发环境搭建

安装:

dotnet new --install Masa.Template

创建项目:

dotnet new masabp -o Masa.Test
  • Blazor WebAssembly
dotnet new masabp --mode Wasm -o Masa.TestWasm
  • Blazor RCL
dotnet new masabp --mode ServerAndWasm -o Masa.TestRcl

运行:

cd Masa.Test\Masa.Test.Server
dotnet run

一套基于Material规范和 Blazor交互能力的基础组件库


现有项目

安装Nuget包:

dotnet add package Masa.Blazor

将 Masa.Blazor 的相关服务添加到 Startup.ConfigureServices :

services.AddMasaBlazor();

在 wwwroot/index.html(WebAssembly) 或 Pages/_Host.cshtml(Server) 中引入样式、字体、脚本:

<html lang="en">
	<head>
		<!--Style-->
		<link href="_content/Masa.Blazor/css/masa-blazor.css" rel="stylesheet">
		<link href="_content/Masa.Blazor/css/masa-extend-blazor.css" rel="stylesheet">
		<!--Font-->
		<link href="https://cdn.jsdelivr.net/npm/@("@mdi")/font@5.x/css/materialdesignicons.min.css" rel="stylesheet">
		<link href="https://fonts.googleapis.com/css?family=Material+Icons" rel="stylesheet">
		<link href="https://use.fontawesome.com/releases/v5.0.13/css/all.css" rel="stylesheet">	
	</head>
	<body>
		<!--Script (try to put it at the end of the body)-->
		<script src="_content/BlazorComponent/js/blazor-component.js"></script>
	</body>
</html>

在_Imports.razor文件中加入命名空间:

@using Masa.Blazor
@using BlazorComponent

修改Shared/MainLayout.razor文件,让MApp成为根元素:

<MApp>
	//其它布局内容
</MApp>

浏览器支持

浏览器名称

支持状态

Chromium (Chrome, Edge Insider)

支持

Edge

支持

Firefox

支持

Safari 10+

支持

IE11/Safari 9

支持(polyfill)

IE9 / IE10

不支持

组件示例

Alert 提示框

一套基于Material规范和 Blazor交互能力的基础组件库

@using AlertTypes = BlazorComponent.AlertTypes

<div>
    <MAlert Dense
            Type="AlertTypes.Info">
        I'm a dense alert with a <strong>type</strong> of info
    </MAlert>
    <MAlert Dense
            Text
            Type="AlertTypes.Success">
        I'm a dense alert with the <strong>text</strong> prop and a <strong>type</strong> of success
    </MAlert>
    <MAlert Dense
            Border="Borders.Left"
            Type="AlertTypes.Warning">
        I'm a dense alert with the <strong>border</strong> prop and a <strong>type</strong> of warning
    </MAlert>
    <MAlert Dense
            Outlined
            Type="AlertTypes.Error">
        I'm a dense alert with the <strong>outlined</strong> prop and a <strong>type</strong> of error
    </MAlert>
</div>

Avatar 头像

<div class="text-center" style="width:100%">
    <MAvatar Color="primary" Size="56">
        <span class="white--text">VJ</span>
    </MAvatar>
</div>

Button 按钮

一套基于Material规范和 Blazor交互能力的基础组件库

<div class="text-center">
    <MButton class="mx-2"
             Fab
             Small
             Dark
             Color="primary">
        <MIcon>
            mdi-minus
        </MIcon>
    </MButton>

    <MButton class="mx-2"
             Fab
             Small
             Dark
             Color="pink">
        <MIcon>mdi-heart</MIcon>
    </MButton>

    <MButton class="mx-2"
             Fab
             Dark
             Color="indigo">
        <MIcon>mdi-plus</MIcon>
    </MButton>

    <MButton class="mx-2"
             Fab
             Dark
             Color="teal">
        <MIcon>mdi-format-list-bulleted-square</MIcon>
    </MButton>

    <MButton class="mx-2"
             Fab
             Dark
             Large
             Color="cyan">
        <MIcon>mdi-pencil</MIcon>
    </MButton>

    <MButton class="mx-2"
             Fab
             Dark
             Large
             Color="purple">
        <MIcon>
            mdi-android
        </MIcon>
    </MButton>
</div>

Dialog 对话框

一套基于Material规范和 Blazor交互能力的基础组件库

<MRow Justify="JustifyTypes.SpaceAround">
    <MCol Cols="@("auto")">
        <MDialog @bind-Value="dialog"
                 Transition="dialog-bottom-transition"
                 MaxWidth="600">
            <ActivatorContent>
                <MButton Color="primary"
                         @attributes="@context.Attrs">
                    From the bottom
                </MButton>
            </ActivatorContent>
            <ChildContent>
                <MCard>
                    <MToolbar Color="primary"
                              Dark>
                        Opening from the bottom
                    </MToolbar>
                    <MCardText>
                        <div class="text-h2 pa-12">Hello world!</div>
                    </MCardText>
                    <MCardActions Class="justify-end">
                        <MButton Text
                                 OnClick="() => dialog = false">
                            Close
                        </MButton>
                    </MCardActions>
                </MCard>
            </ChildContent>
        </MDialog>
    </MCol>
</MRow>

Tab 选项卡

一套基于Material规范和 Blazor交互能力的基础组件库

<MCard>
    <MTabs BackgroundColor="deep-purple accent-4" CenterActive Dark>
        <MTab>One</MTab>
        <MTab>Two</MTab>
        <MTab>Three</MTab>
        <MTab>Four</MTab>
        <MTab>Five</MTab>
        <MTab>Six</MTab>
        <MTab>Seven</MTab>
        <MTab>Eight</MTab>
        <MTab>Nine</MTab>
        <MTab>Ten</MTab>
        <MTab>Eleven</MTab>
        <MTab>Twelve</MTab>
        <MTab>Thirteen</MTab>
        <MTab>Fourteen</MTab>
        <MTab>Fifteen</MTab>
        <MTab>Sixteen</MTab>
        <MTab>Seventeen</MTab>
        <MTab>Eighteen</MTab>
        <MTab>Nineteen</MTab>
        <MTab>Twenty</MTab>
    </MTabs>
</MCard>

更多组件示例参考:
https://blazor-wasm.masastack.com/components/alerts

—END—

开源协议:MIT

资源下载此资源为免费资源立即下载

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

七爪网 免费源码 一套基于Material规范和 Blazor交互能力的基础组件库 https://www.7claw.com/44090.html

分享免费的开源源码

常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、七爪会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、七爪无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在七爪上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于七爪介入快速处理。
查看详情
  • 1、七爪作为第三方中介平台,依据交易合同(商品描述、交易前商定的内容)来保障交易的安全及买卖双方的权益; 2、非平台线上交易的项目,出现任何后果均与互站无关;无论卖家以何理由要求线下交易的,请联系管理举报。
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务