1amageek / pring.ts

Cloud Firestore model framework for TypeScript - Google
https://firebase.google.com/docs/firestore/
MIT License
108 stars 7 forks source link

本番用にminify化するとgetModelNameが意図したとおりの結果にならなくなる #43

Open kahirokunn opened 5 years ago

kahirokunn commented 5 years ago

getModelNameでconstructor名からmodel名を構築しているコードが見受けられましたが、constructor名がminify化すると変わってしまいます。

現在は以下のような手段でその影響から逃れました

import * as Pring from 'pring'

const modelName = 'user'

export default class User extends Pring.Base {
  public static getModelName() {
    return modelName
  }
  public getModelName() {
    return modelName
  }
}

constructorから生成するのはとても良い手法の1つなのですが、自分でmodel名を指定するようにするのも良いのかなとは思いますが、static変数とインスタンス変数両方に定義するのもイケてないなぁとは思っています。 何か良いアイディアでこの辺のDXを上げられないかここで出し合って議論したいと思い、issueを作らせて頂きました。