vue工具类封装,vue封装js方法

  vue工具类封装,vue封装js方法

  这篇文章主要为大家详细介绍了某视频剪辑软件实现计算器的封装,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  本文实例为大家分享了某视频剪辑软件实现计算器封装代码,供大家参考,具体内容如下

  前言:根据计算器可增添加减乘除的封装可扩展,大家请参照效果如下:

  文件目录

  我们导入了四个射流研究…包,在下面有源代码,当前计算器页只有一个瓦尔库拉托尔文件。

  valculator.vue:html代码

  模板

  div class="关于"

  氕这是个计算器你信吗/h1

  van-cell-group type=text

  范菲尔德

  ninput=value=value.replace(/[^\d()(-)(*)]/g,”).replace(/^0{1,}/g,)

  v-model=输入值

  占位符=请输入数字

  /

  /货车单元组

  div style=margin-top:20%

  厢式格栅可点击:column-num=“4”:gutter=“10”

  van-grid-item @ click= onclick(I) v-for=(num,I)in dataNum :key= I :text= dataNum[I]/

  /货车-网格

  /div

  /div

  /模板

  valculator.vue: 《js方法》

  脚本

  //eslint-disable-next-line no-unused-vars

  从"万特"导入{ Field }

  导出默认值{

  data () {

  返回{

  //数字加减乘除数组

  数据编号:[

   ,

  -,

  *,

  /,

  1,

  2,

  3,

  x ,

  4,

  5,

  6,

  =,

  7,

  8,

  9,

  0

  ],

  输入值: ,//输入当前显示值

  输入存储: ,//输入输入值存储

  计算器: ,//解析拿到的值

  临时变量1: ,//存储临时计算拼接值一

  临时变量2: ,//存储临时计算拼接值2

  临时操作员:"//存储临时运算符

  }

  },

  方法:{

  //点击事件

  onclick(索引){

  this.parsing(index) //解析当前的值

  this.judge() //判断进行运算

  },

  //解析当前拿到的值

  解析(索引){

  开关(索引){

  案例4:

  this.calculator=1

  破裂

  案例5:

  this.calculator=2

  破裂

  案例6:

  this.calculator=3

  破裂

  案例8:

  this.calculator=4

  破裂

  案例9:

  this.calculator=5

  破裂

  案例10:

  this.calculator=6

  破裂

  案例12:

  this.calculator=7

  破裂

  案例13:

  this.calculator=8

  破裂

  案例14:

  this.calculator=9

  破裂

  案例15:

  this.calculator=0

  破裂

  案例0:

  this.calculator=

  破裂

  案例1:

  this.calculator=-

  破裂

  案例二:

  this.calculator=*

  破裂

  案例三:

  this.calculator=/

  破裂

  案例11:

  this.calculator==

  破裂

  案例7:

  this.calculator=X

  这个。清除()

  破裂

  默认值:

  破裂

  }

  //这个。out值=this。计算器;

  //这个。inputbox();

  //控制台。日志(这个。计算器);

  },

  //判断是哪个运算符

  judge () {

  if (this.calculator====) {

  this.equal()

  } else if(这个。计算器=== X ){

  这个。清除()

  }否则{

  this.showOn() //显示当前的值

  this.calculation() //计算当前的值

  }

  },

  //计算当前的值

  计算(){

  //如果为空表示当前为第一个运算符,否则开始计算

  const vae=this。是号(这个。计算器)//判断当前输入值是否为数字

  如果(这个。临时运算符=== ){

  if (vae===false) {

  这个。临时操作员=这个。计算器//存储当前计算值

  }否则{

  这个。临时变量1=this。计算器//计算的值:加减触发前拼接的值

  }

  }否则{

  if (vae===false) {

  this.temporaryVariables1=this .检索。检索(

  this.temporaryOperator运算符运算符,

  这个。暂时的变量1,

  这个。暂时的变量2

  ) //如果当前有输入运算法调取加减乘除

  this.assignmentConversion() //清空第二个数

  这个。临时操作员=这个。计算器//计算完后保留当前的运算符

  }否则{

  这个。临时变量2=this。计算器//继续第二个拼接

  }

  }

  },

  //判断是否为数字:"12.3"等都为真的,"哈哈"、"12.33"等都为错误的

  isNumber (val) {

  var regPos=/^\d (\ .\d)?$///非负浮点数

  var regNeg=/^(-(([0-9] \ .[0-9]*[1-9][0-9]*)([0-9]*[1-9][0-9]*\.[0-9] )([0-9]*[1-9][0-9]*)))$///负浮点数

  if(regpos。测试(val) reg阴性。测试(val)){

  返回真实的

  }否则{

  返回错误的

  }

  },

  //等于

  equal () {

  this.temporaryVariables1=this .检索。检索(

  this.temporaryOperator运算符运算符,

  这个。暂时的变量1,

  这个。暂时的变量2

  ) //调取加减乘除

  this.assignmentConversion() //清空第二个数

  这个。输入值=this。临时变量1//将计算后的值显示在屏幕上

  this.inputStorage= //清空之前存储的值

  },

  //清空第二个数

  assignmentConversion () {

  this.temporaryVariables2= //第二个清空用来再次保留

  },

  //清除显示的数据

  Clear () {

  this.inputValue= //显示的值

  this.inputStorage= //输入输入值存储

  this.calculator= //解析拿到的值

  this.temporaryVariables1= //存储临时计算拼接值一

  this.temporaryVariables2= //存储临时计算拼接值2

  this.temporaryOperator= //存储临时运算符

  },

  //显示当前的值

  showOn () {

  这个。输入值=this。输入存储//之前存储先赋给要显示的

  这个。输入值=this。计算器//要显示的值再次加上当前点击的值

  这个。输入存储=这个。输入值//同步要存储的值

  }

  }

  }

  valculator.vue: 《style》

  样式范围

  部门输入安装{

  位置:相对;

  }

  div.inputOne {

  位置:绝对;

  top:10%;

  /*下边框:1px纯灰;*/

  }

  div.inputTwo {

  位置:绝对;

  top:15%;

  }

  部门输入行{

  边框-底部:1px纯灰;

  top:12.5%;

  位置:绝对;

  }

  /风格

  导入其他射流研究…文件:

  retrieval.js:计算器加减乘除选择器

  //eslint-disable-next-line no-unused-vars

  导入添加自./valculator/add

  //eslint-disable-next-line no-unused-vars

  从导入减法./计算器/减法

  从导入乘法运算./valculator/乘法

  导出默认值{

  检索:函数(运算符,变量1,变量2) {

  开关(操作员){

  案例"":

  //调取公共加法

  //eslint-disable-next-line no-undef

  variables1=Add.add(变量1,变量2)

  破裂

  大小写-:

  //调取公共减法

  //eslint-disable-next-line no-undef

  变量1=减法。减法(变量1,变量2)

  破裂

  //eslint-disable-next-line no-duplicate-case

  大小写 * :

  //调取公共乘法

  //eslint-disable-next-line no-undef

  变量1=乘法。乘法(变量1,变量2)

  破裂

  默认值:

  破裂

  }

  返回变量一

  }

  }

  add.js:加法操作

  导出默认值{

  add: function (addOne,addTwo) {

  //eslint-disable-next-line no-unused-vars

  addOne=Number(addOne)Number(加二)//显示当前的值

  返回附件

  }

  }

  乘法。js:乘法操作

  导出默认值{

  乘法:函数(添加一个,添加两个){

  //eslint-disable-next-line no-unused-vars

  addOne=数字(addOne)*数字(加二)//显示当前的值

  返回附件

  }

  }

  减法。js:减法操作

  导出默认值{

  减法:函数(添加一个,添加两个){

  //eslint-disable-next-line no-unused-vars

  addOne=数字(addOne)-数字(加二)//显示当前的值

  返回附件

  }

  }

  总结:

  我们可以添加一个js文件用于同级别的加减法代码,然后写在retrieval.js中当然我们最好把这个js文件改成xml来实现伪反射配置文件。对于乘除法,我们需要进一步把计算器改成每次两次计算,不能一次输入很多数,这样就避免了优先级的问题。当然,它是我们进行优先排序的重要理论依据。

  这就是本文的全部内容。希望对大家的学习有帮助,支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: