0

我決定讓我的模板成爲外部模板,因爲它變得太大而且沒有標記。 所以我創造.html文件和類型化的路徑是我的指令,而不是內部模板中:無法編譯外部模板

templateUrl = root + 'App/modules/blanks/common/Templates/requestBlanks.tpl.html'; 

它的工作原理,但我的人緣,茉莉開始測試失敗,因爲試圖執行$編譯時,他們無法實現它 我安裝https://github.com/karma-runner/karma-ng-html2js-preprocessor和執行

應用/模塊/空白/普通/模板/ requestBlanks.tpl.html

<div> 
... some html with angular 
</div> 

karma.conf.js

... 
files: [ 
//== Templates 
    'App/**/*.tpl.html', 
... 
preprocessors: { 
      'App/**/*.tpl.html': ['ng-html2js'] 
     }, 

ngHtml2JsPreprocessor: { 
      moduleName: 'myTemplates' 
     }, 
... 

requestBlanks-directive.spec.js

'use strict'; 

describe('directive: requestBlanks', function() { 

    var $compile, 
     $rootScope; 
    beforeEach(module(
     'myTemplates', 
     App.Modules.Blanks.moduleId)); 


    beforeEach(inject(function(_$compile_, _$rootScope_) { 
     $compile = _$compile_; 
     $rootScope = _$rootScope_; 
    })); 



    it('tag should be compiled by angular', function() { 
     var element = $compile('<div data-request-blanks data-ng-model="blankType.data"></div>')($rootScope); 
     expect(element.html()).not.toBe(''); 
    }); 

但我得到的錯誤:

Expected '' not to be ''. 

我到底做錯了什麼?

+0

添加'prependPrefix:root'沒有幫助。但問題肯定是在路上 – Naifu

回答

0

在conf文件中添加var root = '';幫助