Angularjs 在typescript中导入模板而不需要

Angularjs 在typescript中导入模板而不需要,angularjs,typescript,import,ecmascript-6,Angularjs,Typescript,Import,Ecmascript 6,我正在使用带有角度1.5组件的typescript。我有一个定制设计的装饰,我通过需要发送模板。除非我得到一个tslint警告,否则它是有效的。(我不想关闭此规则) 禁止导入require()样式 这是我的组件 import './main.template.html'; const app: ng.IModule = angular.module('app'); @Component(app, { selector: 'mainComponent', controllerAs: 'c

我正在使用带有角度1.5组件的typescript。我有一个定制设计的装饰,我通过需要发送模板。除非我得到一个tslint警告,否则它是有效的。(我不想关闭此规则)

禁止导入require()样式

这是我的组件

import './main.template.html';

const app: ng.IModule = angular.module('app');
@Component(app, {
  selector: 'mainComponent',
  controllerAs: 'ctrl',
  styleUrls: '',
  template: require('./main.template.html')
})
class MainComponent extends BaseComponent {
   constructor() {
     super();
   }
}
这是我的装饰师

export const Component = function(module: ng.IModule, options: {
  selector: string,
  controllerAs?: string,
  styleUrls?: string,
  template?: string,
  templateUrl?: string
}) {
return (controller: Function) => {
   module.component(options.selector, angular.extend(options, {  controller: controller }));
  };
};
我试图传递templateUrl而不是template,但发现文件未找到的运行时错误

我还尝试将模板作为变量导入,它会导致编译时错误,看起来不受支持

import mytemplate: string from './main.template.html';
我正在使用网页包。因此,不能从根使用绝对路径


您是否知道如何在不使用require的情况下导入typescript中的模板。

有关templateUrl错误,请检查您的引用和目录结构

或者,在模板中插入html数据:-

@Component(app, {
selector: 'mainComponent',
controllerAs: 'ctrl',
styleUrls: '',
template: `<div>//content
           </div>`
})
@组件(应用程序、{
选择器:“主组件”,
controllerAs:'ctrl',
样式URL:“”,
模板:`//content
`
})

我使用的是webpack build,因此没有模板文件或目录结构。请将模板放在与webpack build.js相同的目录中,可能templateUrl引用来自build.js目录源的文件。这将起作用。但是,我必须将所有模板(每个组件都放在一个目录中)。我担心的是,这可能不是将webpack用作构建工具时的最佳实践导入模板时是否会显示错误