[UI5 常用控件] 08.Wizard,NavContainer

news2025/1/18 3:20:18

文章目录

  • 前言
  • 1. Wizard
    • 1.1 基本结构
    • 1.2 属性
      • 1.2.1 Wizard:complete
      • 1.2.2 Wizard:finishButtonText
      • 1.2.3 Wizard:currentStep
      • 1.2.4 Wizard:backgroundDesign
      • 1.2.5 Wizard:enableBranching
      • 1.2.6 WizardStep:validated
      • 1.2.7 WizardStep:complete
    • 1.3 跳转函数
      • 1.3.1 goToStep
      • 1.3.2 discardProgress
  • 2. NavContainer
    • 2.1 基本组成
    • 2.2 Page跳转
  • 3. 示例代码


前言

本章节记录常用控件 Wizard,NavContainer。

  • Wizard控件是一种用于分步导航和指导用户完成多步骤任务的界面控件。它通常用于创建复杂的表单或流程,其中用户需要按照一定的顺序完成多个步骤。Wizard控件可以将整个过程分解为一系列步骤,并允许用户逐步完成每个步骤。
  • NavContainer 是 SAPUI5 中用于实现页面导航的容器控件。它允许在同一个页面上管理多个子页面,并支持页面之间的导航。

其路径是

  • sap.m.Wizard
  • sap.m.NavContainer

1. Wizard

1.1 基本结构

<Wizard>
<WizardStep></WizardStep>
<WizardStep></WizardStep>
<WizardStep></WizardStep>
</Wizard>

1.2 属性

1.2.1 Wizard:complete

  • 当所有Step完成时提供Preview按钮绑定事件

在这里插入图片描述

	<Wizard
       id="CreateProductWizard"
       complete="wizardCompletedHandler"
    >
wizardCompletedHandler:function(){
                this._oNavContainer.to(this.byId("wizardReviewPage"));
            },

1.2.2 Wizard:finishButtonText

  • 更改最后一个步骤的按钮文本。默认是Preview

在这里插入图片描述

1.2.3 Wizard:currentStep

  • 指定初始化时显示的步骤

在这里插入图片描述

1.2.4 Wizard:backgroundDesign

  • 共有4种属性Standard,Solid,List,Transparent。 具体效果差异不大

1.2.5 Wizard:enableBranching

  • 可以分配Step中的分支,并指定需要的Step作为下一步
  • 要配合WizardStep中的subsequentSteps,nextStep使用.
  • 必须初始化时指定subsequentSteps对应组建的nextStep (onAfterRendering)
  • View
   <Button text="更换为A-C-B" press="ChangeStep"></Button>
   <Wizard id="customStep" enableBranching="true" backgroundDesign="Solid">
        <WizardStep id="A" title="A" subsequentSteps="B,C"></WizardStep>
        <WizardStep id="B" title="B" nextStep="D"></WizardStep>
        <WizardStep id="C" title="C" nextStep="D"></WizardStep>
        <WizardStep id="D" title="D" ></WizardStep>
    </Wizard>
  • Controller
	onAfterRendering: function () {
	    var stepA = this.byId("A")
	    var stepB = this.byId("B")
	    stepA.setNextStep(stepB)    
	},
	ChangeStep:function(){
	    
	    var wizard2 = this.byId("customStep")
	    wizard2.discardProgress(wizard2.getSteps()[0]);
	    var stepA = this.byId("A")
	    var stepC = this.byId("C")
	
	    stepA.setNextStep(stepC)    
	    
	    
	},

1.2.6 WizardStep:validated

  • 判断当前页面有无错误。如果没有错误则显示下一步按钮,否则不显示下一步按钮
  • 再控制器中使用validateStep,invalidateStep控制属性
  • 结合activate属性一起使用,activate事件绑定控制validated属性的逻辑

在这里插入图片描述

	<WizardStep
	     id="ProductInfoStep"
	     validated="false"
	     title="基本信息"
	     activate="additionalInfoValidation"
	 >
	additionalInfoValidation: function () {
       var name = this.byId("ProductName").getValue();
       var unit = this.byId("ProductUnit").getValue();

       if (unit != "EA") {
           this._wizard.setCurrentStep(this.byId("ProductInfoStep"));
           this.model.setProperty("/productUnitState", "Error");
       } else {
           this.model.setProperty("/productUnitState", "None");
       }

       if (name.length < 6) {
           this._wizard.setCurrentStep(this.byId("ProductInfoStep"));
           this.model.setProperty("/productNameState", "Error");
       } else {
           this.model.setProperty("/productNameState", "None");
       }

       if (name.length < 6 || unit != "EA") {
           this._wizard.invalidateStep(this.byId("ProductInfoStep"));
       } else {
           this._wizard.validateStep(this.byId("ProductInfoStep"));
       }
   },

1.2.7 WizardStep:complete

  • 当点击下一步按钮之后触发事件
  • View
	<WizardStep
	   id="PricingStep"
	    complete="inputComplete"
	    validated="true"
	    title="最后确认"
	>
  • Controller
	inputComplete: function () {
	    this.model.setProperty("/complete", true)
	    debugger
	},

1.3 跳转函数

1.3.1 goToStep

  • pageno是需要跳转的Step
this._wizard.goToStep(this._wizard.getSteps()[pageno]);

在这里插入图片描述

1.3.2 discardProgress

  • 撤回所有Step并跳转
this._wizard.discardProgress(this._wizard.getSteps()[pageno]);

在这里插入图片描述

2. NavContainer

2.1 基本组成

  • 默认会显示第一个Page,之后会通过事件进行Page之间的跳转
<NavContainer>
	<pages>
		<Page></Page>
		<Page></Page>
	</pages>
</NavContainer>

2.2 Page跳转

  • 跳转到指定Page
	this._oNavContainer = this.byId("wizardNavContainer");
	this._oNavContainer.to(this.byId("wizardReviewPage"));
  • 跳转到之前Page
	this._oWizardContentPage = this.byId("wizardContentPage");
	this._oNavContainer.backToPage(this._oWizardContentPage.getId());
  • 绑定跳转事件
	var fnAfterNavigate = function () {
	    this._wizard.goToStep(this._wizard.getSteps()[pageno]);
	    this._oNavContainer.detachAfterNavigate(fnAfterNavigate);
	}.bind(this);
	
	this._oNavContainer.attachAfterNavigate(fnAfterNavigate);

3. 示例代码

  • View
<mvc:View
    controllerName="c080.controller.Main"
    xmlns:form="sap.ui.layout.form"
    xmlns:mvc="sap.ui.core.mvc"
    xmlns:core="sap.ui.core"
    displayBlock="true"
    xmlns="sap.m"
>
    <NavContainer id="wizardNavContainer">
        <pages>
            <Page
                id="wizardContentPage"
                title="{i18n>title}"
            >
                <Wizard
                    id="CreateProductWizard"
                    complete="wizardCompletedHandler"
                    finishButtonText="最后确认"
                    currentStep="LastStep"
                >
                    <WizardStep
                        id="ProductTypeStep"
                        title="物料类型"
                        validated="true"
                    >
                        <MessageStrip
                            class="sapUiSmallMarginBottom"
                            text="请选择物料类型,并点击下一步"
                            showIcon="true"
                            type="Information"
                        />

                        <HBox
                            alignItems="Center"
                            justifyContent="Center"
                            width="100%"
                        >
                            <SegmentedButton
                                width="320px"
                                selectionChange="setProductTypeFromSegmented"
                            >
                                <items>
                                    <SegmentedButtonItem
                                        icon="sap-icon://database"
                                        text="成品"
                                    />
                                    <SegmentedButtonItem
                                        icon="sap-icon://technical-object"
                                        text="原料"
                                    />
                                    <SegmentedButtonItem
                                        icon="sap-icon://tags"
                                        text="其他"
                                    />
                                </items>
                            </SegmentedButton>
                        </HBox>
                    </WizardStep>
                    <WizardStep
                        id="ProductInfoStep"
                        validated="false"
                        title="基本信息"
                        activate="additionalInfoValidation"
                    >
                        <MessageStrip
                            class="sapUiSmallMarginBottom"
                            text="通过validated属性控制下一步按钮的显示。具体调用validateStep(Step) / invalidateStep(Step)  "
                            showIcon="true"
                        />

                        <form:SimpleForm
                            editable="true"
                            layout="ResponsiveGridLayout"
                        >
                            <Label
                                text="物料描述"
                                required="true"
                            />
                            <Input
                                valueStateText="请输入6位以上的文字"
                                valueState="{/productNameState}"
                                id="ProductName"
                                liveChange="additionalInfoValidation"
                                placeholder="请输入6位以上的文字"
                                value="{/productName}"
                            />
                            <Label
                                text="基本单位"
                                required="true"
                            />
                            <Input
                                valueStateText="基本单位只能输入EA"
                                valueState="{/productUnitState}"
                                id="ProductUnit"
                                liveChange="additionalInfoValidation"
                                type="Text"
                                placeholder="请输入单位"
                                value="{/productUnit}"
                            />
                            <Label text="物料组" />
                            <Select selectedKey="{/productGroup}">
                                <core:Item
                                    key="10"
                                    text="笔记本"
                                />
                                <core:Item
                                    key="20"
                                    text="台式机"
                                />
                                <core:Item
                                    key="30"
                                    text="一体机"
                                />
                            </Select>
                            <Label text="备注" />
                            <TextArea
                                value="{/productDescription}"
                                rows="5"
                            />
                        </form:SimpleForm>
                    </WizardStep>
                    <WizardStep
                        id="OptionalInfoStep"
                        title="额外信息"
                    >
                        <MessageStrip
                            class="sapUiSmallMarginBottom"
                            text="请输入额外信息"
                            showIcon="true"
                        />
                        <VBox>
                            <form:SimpleForm
                                editable="true"
                                layout="ResponsiveGridLayout"
                            >
                                <Label text="采购类型" />
                                <CheckBox
                                    id="inStock"
                                    text="内部生产"
                                    valueState="Information"
                                    selected="{/inStock}"
                                    select="onCheckBoxSelect"
                                />
                                <CheckBox
                                    id="outStock"
                                    text="外部采购"
                                    valueState="Information"
                                    selected="{/outStock}"
                                    select="onCheckBoxSelect"
                                />
                                <Label text="其他信息" />
                                <TextArea
                                    value="{/optionalDescription}"
                                    rows="5"
                                />
                            </form:SimpleForm>
                        </VBox>
                        <!-- <HBox justifyContent="Start">
                        <Button text="Save" type="Emphasized" width="100px"></Button>
                    </HBox> -->
                    </WizardStep>
                    <WizardStep
                        id="LastStep"
                        complete="inputComplete"
                        validated="true"
                        title="最后确认"
                    >
                        <MessageStrip
                            class="sapUiSmallMarginBottom"
                            text="使用previousStep() 和 nextStep() 方法跳转wizard步骤. 另外 GoToStep(step) 方法可以跳转指定步骤"
                            showIcon="true"
                        />
                    </WizardStep>
                </Wizard>
                <Button text="更换为A-C-B" press="ChangeStep"></Button>
                <Wizard id="customStep" enableBranching="true" backgroundDesign="Solid">
                    <WizardStep id="A" title="A" subsequentSteps="B,C"></WizardStep>
                    <WizardStep id="B" title="B" nextStep="D"></WizardStep>
                    <WizardStep id="C" title="C" nextStep="D"></WizardStep>
                    <WizardStep id="D" title="D" ></WizardStep>
                </Wizard>

                <footer>
                    <Bar>
                        <contentRight>
                            <Button
                                text="Cancel"
                                press="handleWizardCancel"
                            />
                        </contentRight>
                    </Bar>
                </footer>
            </Page>
            <Page
                id="wizardReviewPage"
                showHeader="false"
            >
                <form:SimpleForm
                    title="1. 物料类型"
                    editable="false"
                    layout="ResponsiveGridLayout"
                >
                    <Label text="物料类型" />
                    <HBox renderType="Bare">
                        <core:Icon
                            src="{/productTypeIcon}"
                            class="sapUiSmallMarginEnd"
                        />
                        <Text
                            id="ProductTypeChosen"
                            text="{/productType}"
                        />
                    </HBox>
                    <Link
                        press="editStep1"
                        text="Edit"
                    />
                </form:SimpleForm>
                <form:SimpleForm
                    title="2. 基本信息"
                    editable="false"
                    layout="ResponsiveGridLayout"
                >
                    <Label text="物料描述" />
                    <Text text="{/productName}" />
                    <Label text="基本单位" />
                    <Text text="{/productUnit}" />
                    <Label text="物料组" />
                    <Text text="{/productGroup}" />
                    <Label text="备注" />
                    <Text text="{/productDescription}" />
                    <Link
                        press="editStep2"
                        text="Edit"
                    />
                </form:SimpleForm>
                <form:SimpleForm
                    title="3. 额外信息"
                    editable="false"
                    layout="ResponsiveGridLayout"
                >
                    <Label text="采购类型" />
                    <Text
                        text="{= ${/inStock} ? ${/outStock} ? '内部生产,外部采购' : '内部生产' : ${/outStock} ? '外部采购' : '无'}"
                    />
                    <Label text="其他信息" />
                    <Text text="{/optionalDescription}" />
                    <Link
                        press="editStep3"
                        text="Edit"
                    />
                </form:SimpleForm>
                <footer>
                    <Bar>
                        <contentRight>
                            <Button
                                text="提交"
                                press="handleWizardOk"
                            />
                            <Button
                                text="取消"
                                press="handleWizardCancel"
                            />
                        </contentRight>
                    </Bar>
                </footer>
            </Page>
        </pages>
    </NavContainer>
    
    
</mvc:View>

  • Controller
sap.ui.define([
    "sap/ui/core/mvc/Controller",
    'sap/ui/model/json/JSONModel'
],
    /**
     * @param {typeof sap.ui.core.mvc.Controller} Controller
     */
    function (Controller, JSONModel) {
        "use strict";

        return Controller.extend("c080.controller.Main", {
            onInit: function () {
                this._wizard = this.byId("CreateProductWizard");
                this._oNavContainer = this.byId("wizardNavContainer");
                this._oWizardContentPage = this.byId("wizardContentPage");

                this.model = new JSONModel();
                this.model.setData({
                    productNameState: "Error",
                    productUnitState: "Error",
                    productName: "测试用物料010",
                    productUnit: "EA",
                    productGroup: "20",
                    productDescription: "SAP(Systems, Applications, and Products)是一套全球领先的企业管理软件解决方案,帮助企业整合各业务流程,提高效率。其包括ERP(企业资源规划)、CRM(客户关系管理)、SCM(供应链管理)等模块,涵盖财务、人力资源、生产等方面。SAP通过实时数据处理和集成,优化企业运营,提供智能决策支持。其灵活性和可扩展性使其适用于各行各业,成为全球众多企业的首选解决方案,助力业务创新和数字化转型。",
                    optionalDescription: "UI5是SAP开发的用户界面框架,基于HTML5技术,用于构建现代、响应式、直观的企业级Web应用程序。它支持模块化、扩展性强,提供丰富的控件库,简化开发流程,实现优秀的用户体验。",
                    productType: "成品",
                    productTypeIcon: "sap-icon://database",
                    inStock: false,
                    outStock: false,
                    complete: false
                });
                this.getView().setModel(this.model);

                
            },
            onAfterRendering: function () {
                var stepA = this.byId("A")
                var stepB = this.byId("B")
                stepA.setNextStep(stepB)    
            },
            ChangeStep:function(){
                
                var wizard2 = this.byId("customStep")
                wizard2.discardProgress(wizard2.getSteps()[0]);
                var stepA = this.byId("A")
                var stepC = this.byId("C")

                stepA.setNextStep(stepC)    
                
                
            },
            additionalInfoValidation: function () {
                var name = this.byId("ProductName").getValue();
                var unit = this.byId("ProductUnit").getValue();

                if (unit != "EA") {
                    this._wizard.setCurrentStep(this.byId("ProductInfoStep"));
                    this.model.setProperty("/productUnitState", "Error");
                } else {
                    this.model.setProperty("/productUnitState", "None");
                }

                if (name.length < 6) {
                    this._wizard.setCurrentStep(this.byId("ProductInfoStep"));
                    this.model.setProperty("/productNameState", "Error");
                } else {
                    this.model.setProperty("/productNameState", "None");
                }

                if (name.length < 6 || unit != "EA") {
                    this._wizard.invalidateStep(this.byId("ProductInfoStep"));
                } else {
                    this._wizard.validateStep(this.byId("ProductInfoStep"));
                }
            },
            setProductTypeFromSegmented: function (evt) {

                var productType = evt.getParameters().item.getText();
                var productTypeIcon = evt.getParameters().item.getIcon();

                this.model.setProperty("/productType", productType);
                this.model.setProperty("/productTypeIcon", productTypeIcon);

            },
            onCheckBoxSelect: function (evt) {
                // debugger
                var oText = evt.getSource().getProperty('text');
                var isSelected = evt.getParameters().selected;
                if (oText === "内部制作") {
                    this.model.setProperty("/inStock", isSelected);
                } else if (oText === "外部采购") {
                    this.model.setProperty("/outStock", isSelected);
                }


            },
            wizardCompletedHandler: function () {
                this._oNavContainer.to(this.byId("wizardReviewPage"));
            },
            inputComplete: function () {
                this.model.setProperty("/complete", true)
               
            },
            goToPage: function (pageno) {
                var fnAfterNavigate = function () {
                    this._wizard.goToStep(this._wizard.getSteps()[pageno]);
                    this._oNavContainer.detachAfterNavigate(fnAfterNavigate);
                }.bind(this);

                this._oNavContainer.attachAfterNavigate(fnAfterNavigate);
                this._oNavContainer.backToPage(this._oWizardContentPage.getId());
            },
            editStep1: function () {
                this.goToPage(0)
            },
            editStep2: function () {
                this.goToPage(1)
            },
            editStep3: function () {
                this.goToPage(2)
            },
            handleWizardCancel: function () {
                // alert(11)
                this._oNavContainer.backToPage(this._oWizardContentPage.getId());
                this._wizard.discardProgress(this._wizard.getSteps()[0]);
            }

        });
    });

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1442114.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】vim的基本操作与配置(下)

Hello everybody!今天我们继续讲解vim的操作与配置&#xff0c;希望大家在看过这篇文章与上篇文章后都能够轻松上手vim! 1.补充 在上一篇文章中我们说过了&#xff0c;在底行模式下set nu可以显示行号。今天补充一条&#xff1a;set nonu可以取消行号。这两条命令大家看看就可…

LeetCode-第28题-找出字符串中第一个匹配项的下标

1.题目描述 给你两个字符串 haystack 和 needle &#xff0c;请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标&#xff08;下标从 0 开始&#xff09;。如果 needle 不是 haystack 的一部分&#xff0c;则返回 -1 。 2.样例描述 3.思路描述 可以让字符串 …

SpringBoot源码解读与原理分析(二十)IOC容器的刷新(一)

文章目录 7 IOC容器的刷新7.1 初始化前的预处理7.1.1 初始化属性配置7.1.2 初始化早期事件的集合 7.2 初始化BeanFactory7.2.1 注解驱动的refreshBeanFactory7.2.2 XML驱动的refreshBeanFactory7.2.3 获取BeanFactory 7.3 BeanFactory的预处理配置7.3.1 ApplicationContextAwar…

自然语言学习nlp 六

https://www.bilibili.com/video/BV1UG411p7zv?p118 Delta Tuning&#xff0c;尤其是在自然语言处理&#xff08;NLP&#xff09;和机器学习领域中&#xff0c;通常指的是对预训练模型进行微调的一种策略。这种策略不是直接更新整个预训练模型的权重&#xff0c;而是仅针对模型…

vue3+vite+ts 配置commit强制码提交规范配置 commitlint

配置 git 提交时的 commit 信息&#xff0c;统一提交 git 提交规范 安装命令: npm install -g commitizen npm i cz-customizable npm i commitlint/config-conventional commitlint/cli -D 文件配置 根路径创建文件 commitlint.config.js module.exports {// 继承的规…

【开源】基于JAVA+Vue+SpringBoot的假日旅社管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统介绍2.2 QA 问答 三、系统展示四、核心代码4.1 查询民宿4.2 新增民宿评论4.3 查询民宿新闻4.4 新建民宿预订单4.5 查询我的民宿预订单 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的假日旅社…

STL之list容器的介绍与模拟实现+适配器

STL之list容器的介绍与模拟实现适配器 1. list的介绍2. list容器的使用2.1 list的定义2.2 list iterator的使用2.3 list capacity2.4 list element access2.5 list modifiers2.6 list的迭代器失效 3. list的模拟实现3.1 架构搭建3.2 迭代器3.2.1 正向迭代器3.2.2反向迭代器适配…

鸿蒙开发(六)布局概述

迄今为止&#xff0c;我还没有正式提到布局的概念。但其实我之前的demo里面&#xff0c;已经默认使用到了一种布局&#xff0c;那就是线性布局&#xff08;Row、Column&#xff09;&#xff0c;这也是DevEco创建项目默认页面里面默认采用的布局。那么本篇&#xff0c;带着大家一…

PyTorch 2.2 中文官方教程(十)

使用整体追踪分析的追踪差异 原文&#xff1a;pytorch.org/tutorials/beginner/hta_trace_diff_tutorial.html 译者&#xff1a;飞龙 协议&#xff1a;CC BY-NC-SA 4.0 作者: Anupam Bhatnagar 有时&#xff0c;用户需要识别由代码更改导致的 PyTorch 操作符和 CUDA 内核的变化…

python 动态数据 展示 ,数据是由51单片机发送过来的,温度传感器。

import tkinter as tk import randomimport seriallis[] for i in range(50):lis.append(i1) # 打开串行端口 ser serial.Serial(COM3, 9600) # 9600为波特率&#xff0c;根据实际情况进行调整# 初始化数据 lis [random.randint(15, 35) for _ in range(50)]def update_data…

【深度学习:Bard】我们 AI 之旅的重要下一步

【深度学习&#xff1a;AI 之旅】我们 AI 之旅的重要下一步 Bard简介将 AI 的优势带入我们的日常产品中帮助开发人员利用 AI 进行创新大胆负责 人工智能是我们今天正在研究的最深刻的技术。无论是帮助医生更早地发现疾病&#xff0c;还是使人们能够用自己的语言获取信息&#x…

2024年10 个好用的AI简历工具盘点推荐

在职场竞争激烈的今天&#xff0c;一份出色的简历就像是你的秘密武器&#xff0c;能帮你在众多候选人中脱颖而出&#xff0c;赢得面试宝座。随着 ChatGPT 引领的 AI 浪潮席卷而来&#xff0c;各式各样的 AI 简历工具如雨后春笋般涌现。面对这样的背景&#xff0c;神器集今天为大…

立面效果图为何要用云渲染100?渲染100邀请码1a12

建筑设计是一门艺术&#xff0c;而立面效果图是艺术的展现&#xff0c;它在设计中非常重要。 1、立面效果图的重要性 立面效果图能用来展示建筑物的风格、材质、色彩以及环境等因素&#xff0c;通过它&#xff0c;设计师可以检验项目质量&#xff0c;评估效果是否达到预期&…

【开源】基于JAVA+Vue+SpringBoot的课程案例资源库系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 管理员需求分析2.2 用户需求分析 三、系统设计3.1 业务流程设计3.1.1 管理员业务流程设计3.1.2 用户业务流程设计3.1.3 首页功能模块及业务流程分析3.1.4 案例资源中心功能模块及业务流程分析3.1.5 用户信息中心功能模块…

C语言笔试题之求出二叉树的最大深度(递归解决)

实例要求&#xff1a; 1、给定一个二叉树 root &#xff0c;返回其最大深度&#xff1b;2、二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数&#xff1b; 案例展示&#xff1a; 实例分析&#xff1a; 1、判断根节点是否为空&#xff1b;2、分别递归处理左…

Python环境下基于指数退化模型和LSTM自编码器的轴承剩余寿命预测

滚动轴承是机械设备中关键的零部件之一&#xff0c;其可靠性直接影响了设备的性能&#xff0c;所以对滚动轴承的剩余使用寿命(RUL)进行预测是十分必要的。目前&#xff0c;如何准确地对滚动轴承剩余使用寿命进行预测&#xff0c;仍是一个具有挑战的课题。对滚动轴承剩余寿命评估…

C语言中的数据类型-强转

强制类型转换 概念&#xff1a;将某种类型的数据转化我们需要的数据类型&#xff0c;注意强制类型转化是临时强转&#xff0c;不会改变本身的数据类型。 强转又分为显式强转和隐式转化 显示强转是按照我们的要求进行转化 格式&#xff1a;(需要转化数据类型)变量名 #inclu…

VUE学习——事件处理

事件分为内联事件和方法事件。 我们可以使用【v-on】&#xff08;简写&#xff1a;&#xff09;来处理。 内联 <button v-on:click"count">按钮</button><button click"count">按钮</button><p>{{ count }}</p>方法

YouTrack 用户登录提示 JIRA 错误

就算输入正确的用户名和密码&#xff0c;我们也得到了下面的错误信息&#xff1a; youtrack Cannot retrieve JIRA user profile details. 解决办法 出现这个问题是因为 YouTrack 在当前的系统重有 JIRA 的导入关联。 需要把这个导入关联取消掉。 找到后台配置的导入关联&a…

图灵日记之java奇妙历险记--抽象类和接口

目录 抽象类概念抽象类语法 接口概念规则使用特性实现多个接口接口的继承接口使用实例Clonable接口和深拷贝抽象类和接口的区别 Object类 抽象类 概念 在面向对象的概念中,所有对象都是通过类来描述的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够…