dec*_*dec 4 javascript angularjs
是否可以使用动态templateUrl创建AngularJS组件?意味着我想将一个服务注入到组件中,该组件为我提供了模板的基本路径:
即:templateUrl:configuration.baseScriptPath +'... html'
有可能使用指令,但如何使用组件执行此操作?
angular.module('runtime')
.component('textInput', {
templateUrl: /*configuration.baseScriptPath + */'fd/components/text_input_instance.html',
controller: [
'$scope', '$element', 'focusInputGroup', 'configuration',
function ($scope, $element, focusInputGroup, configuration) {
Run Code Online (Sandbox Code Playgroud)
您可以使用模板而不是templateUrl ng-include,如下所示:
angular.module('runtime')
.component('textInput', {
template: '<div ng-include="getTemplate()">',
controller: [
'$scope', '$element', 'focusInputGroup', 'configuration',
function ($scope, $element, focusInputGroup, configuration) {
$scope.getTemplate = function () {
return configuration.baseScriptPath + 'fd/components/text_input_instance.html';
};
Run Code Online (Sandbox Code Playgroud)
component的templateUrl属性也需要一个函数.所以你可以尝试这个,
angular.module('runtime')
.component('textInput', {
templateUrl: ['$configuration', function($configuration) {
return $configuration.basepath + '.html'
}],
controller: [
'$scope', '$element', 'focusInputGroup', 'configuration',
function($scope, $element, focusInputGroup, configuration) {
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4857 次 |
| 最近记录: |