JavaScript/Angular1 - Refacto 算法/逻辑条件

标签 javascript angularjs ecmascript-6 lodash

我有 2 个条件来比较 2 个模型(如果存在)或不显示不同的消息。 对象 this.realEstateProjectCurrentProduct 保持不变,不同的是属性 housingTaxpropertyTax,else 的情况保持不变。

if (this.realEstateProjectCurrentProduct.housingTax) {
  return this.housingTax = `${this.realEstateProjectCurrentProduct.housingTax} ${this.$translate.instant('currencySymbols.euro')}`
} else {
  return this.housingTax = 'No data'
}
if (this.realEstateProjectCurrentProduct.propertyTax) {
  return this.propertyTax = `${this.realEstateProjectCurrentProduct.propertyTax} ${this.$translate.instant('currencySymbols.euro')}`
} else {
  return this.propertyTax = 'No data'
}

我该如何改善这两个条件,因为它们与 Lodash 或 ecmaScript 2015 之间有太多相似之处

最佳答案

您可以使用属性解构,例如:

let { housingTax, propertyTax } = this.realEstateProjectCurrentProduct;
housingTax = housingTax ? `${housingTax} ${this.$translate.instant('currencySymbols.euro')}`: 'no data'
propertyTax = propertyTax ?  `${propertyTax} ${this.$translate.instant('currencySymbols.euro')}` : 'no data'

关于JavaScript/Angular1 - Refacto 算法/逻辑条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46684598/

相关文章:

javascript - 浏览器选项卡操作

javascript - 从多个数组属性创建对象

javascript - 将数据加载到 HTML 中的可变高度表

javascript - 从网站构建 html/css/javascript 代码以提高可读性

angularjs - 使用 Angular JS 加载图像后更新 DIV 元素

javascript - 从 JSON 生成动态条件表单字段 - AngularJS1.x

javascript - 使用 angular.js 路由手动刷新时仍然得到 'Not Found'

javascript - React Native - 按钮 onPress 不工作

unit-testing - 用 Jest 测试 ES6 模块

ecmascript-6 - ECMAScript 5.1 和 6 规范类型值