我剛剛試過reopenClass()
和extend()
但我有點驚訝,看到Em.String
堅持它沒有這些功能。如何擴展沒有原型的Ember.String?
我也試過reopen()
但是失敗的方式是一樣的。
我不希望使用的原型,如果我沒有,因爲我想保持灰燼中的方式
我剛剛試過reopenClass()
和extend()
但我有點驚訝,看到Em.String
堅持它沒有這些功能。如何擴展沒有原型的Ember.String?
我也試過reopen()
但是失敗的方式是一樣的。
我不希望使用的原型,如果我沒有,因爲我想保持灰燼中的方式
Ember.String
只是一對夫婦的實用功能在這裏看到https://github.com/emberjs/ember.js/blob/v1.0.0-rc.4/packages/ember-runtime/lib/system/string.js#L24哈希值。 Ember擴展String.prototype
添加這些實用功能。
我想你沒有其他辦法可以擴展香草String.prototype
來增加你可能需要的功能,而這些功能並不是由燼提供的,那麼你的功能就會和燼一起生活。從docs採取
注: 定義字符串的輔助方法,包括字符串格式化和本地化。除非Ember.EXTEND_PROTOTYPES.String爲false,否則這些方法也將被添加到String.prototype中。
希望它可以幫助
灰燼這裏延伸String.prototype
爲最新此時提交 - https://github.com/emberjs/ember.js/blob/632191f09770113cdc84ffd6e080315ab57c3f65/packages/ember-runtime/lib/ext/string.js#L21
所有被插入String.prototype
在有硬編碼的功能,因此添加什麼Ember.String
會不是被Ember.js添加到String.prototype
,所以唯一的方法是直接向字符串添加方法。