9
我想在AngularJS指令中实现OOP继承来创建可重用的控件。我正在使用Base2's Class definition进行继承。我在想什么是实现这样在AngularJS指令中实现继承
<control-input type="text" name="vendor_name"></control-input>
一个指令然后,我会创建一个BaseControl
类常用功能
angular.module('base',[]).factory('BaseControl', function() {
return Base.extend({
'restrict': 'E',
'require': '^parentForm'
/* ... */
};
});
然后,我会创建特定的控制
angular.module('controls',['base']).factory('TextControl', function(BaseControl) {
return BaseControl.extend({
/* specific functions like templateUrl, compile, link, etc. */
};
});
的问题是我想使用单个指令control-input
并在属性中指定类型,但问题是当我创建指令时,我没有k现在如何检索类型
angular.module('controls',['controls']).directive('control-input', function(TextControl) {
/* here it should go some code like if (type === 'text') return new TextControl(); */
});
任何想法?
是的,问题是,我想返回DDO本身为业,更换'返回{...}''通过返回新TextControl(...)'或类似的东西那时,我没有关于属性和范围的信息。 –