设置 ng-htmljs-preprocessor 业力预处理器
setting up ng-htmljs-preprocessor karma preprocessor
我正在设置我的 Karma 配置文件,但我不完全理解存在的一些选项,因为我没有成功测试具有 运行 通过 ngHtml2JsPreprocessor 并且已经
$templateCached
在 ngHtml2JsPreprocessor 内部,我可以添加一些涉及路径的键值属性。
ngHtml2JsPreprocessor: {
stripPrefix: ".*/Went all the way back to the root of my application/",
// moduleName: 'templatesCached'//
},
我现在注释掉了模板,以确保我可以作为模块访问每个文件。我正在加载模块,没有错误。我可以在我的开发工具中找到 templateCached 版本。
beforeEach(module('template'));
我的模板文件夹位于我创建的基本路径之外。
basePath: 'Scripts/',
我在 预处理器 对象中引用了它
preprocessors: {
'../Templates/**/*.html' : ['ng-html2js']
},
同样,我所有的模板现在都是 js 文件并被缓存。
我在 package.json 中将文件保存为
save-dev
"karma-chrome-launcher": "^0.2.2",
"karma-jasmine": "^0.2.2",
"karma-ng-html2js-preprocessor": "^0.2.1",
我在插件中引用了我的安装。
plugins: [
'karma-chrome-launcher',
'karma-jasmine',
'karma-sinon',
'karma-ng-html2js-preprocessor'
],
我已加载所有文件
files: [
//jquery libaries
// angular libraries
// Scripts files
// source app.js
// tests folder and files
]
我的测试是 运行 Karma 开始
然而,我的指令只是一个空字符串
element.html()
returns“”
我已经设置了吟游诗人注入
bard.inject(
"$compile",
"$controller",
"$rootScope",
'$templateCache',
"haConfig",
"$q"
);
这是我的 beforeEach
的内部
bard.mockService(haConfig, {
getTemplateUrl: '/tst!'
});
//bard.mockService(haConfig, {});
console.log('ha config2', haConfig.getTemplateUrl());
var html = angular.element("<div explore-hero></div>");
console.log('htl',haConfig.getTemplateUrl());
scope = $rootScope.$new();
//templateCache
element = $compile(html)(scope);
//console.log(haConfig.getTemplateUrl(html));
scope.$digest(element);
console.log('missing text',haConfig.getTemplateUrl(html));
controller = element.scope();
console.log("element", element);
我不知道为什么我得到一个空字符串。我正在创建 html 文件,但其中没有任何内容。
我想知道是否应该让 templatesCached 文件 出现在我的开发工具的文件夹中?此外,是否应在 karma.conf.js
中的文件数组中引用文件
现在我引用了 html 个文件?我试过 js 文件,但似乎没有任何效果
这个问题实际上很容易解决。我很想删除它,但如果有人有类似的问题,我希望它可用。
在karma.conf.js里面我有一个
stripPrefix: 'rootDirectory' // was already in place
stripSuffix: '.js.html' // I had to make a strip on the templatesCached
prependSuffix: '.html' // this is what I was searching for
当预处理器 运行 它模板缓存了我所有的文件。然而,它们并没有像我期望的那样结束,我无法阅读它们。我已经正确设置了模块和其他部分。
我正在设置我的 Karma 配置文件,但我不完全理解存在的一些选项,因为我没有成功测试具有 运行 通过 ngHtml2JsPreprocessor 并且已经
$templateCached
在 ngHtml2JsPreprocessor 内部,我可以添加一些涉及路径的键值属性。
ngHtml2JsPreprocessor: {
stripPrefix: ".*/Went all the way back to the root of my application/",
// moduleName: 'templatesCached'//
},
我现在注释掉了模板,以确保我可以作为模块访问每个文件。我正在加载模块,没有错误。我可以在我的开发工具中找到 templateCached 版本。
beforeEach(module('template'));
我的模板文件夹位于我创建的基本路径之外。
basePath: 'Scripts/',
我在 预处理器 对象中引用了它
preprocessors: {
'../Templates/**/*.html' : ['ng-html2js']
},
同样,我所有的模板现在都是 js 文件并被缓存。
我在 package.json 中将文件保存为
save-dev
"karma-chrome-launcher": "^0.2.2",
"karma-jasmine": "^0.2.2",
"karma-ng-html2js-preprocessor": "^0.2.1",
我在插件中引用了我的安装。
plugins: [
'karma-chrome-launcher',
'karma-jasmine',
'karma-sinon',
'karma-ng-html2js-preprocessor'
],
我已加载所有文件
files: [
//jquery libaries
// angular libraries
// Scripts files
// source app.js
// tests folder and files
]
我的测试是 运行 Karma 开始
然而,我的指令只是一个空字符串
element.html()
returns“”
我已经设置了吟游诗人注入
bard.inject(
"$compile",
"$controller",
"$rootScope",
'$templateCache',
"haConfig",
"$q"
);
这是我的 beforeEach
的内部 bard.mockService(haConfig, {
getTemplateUrl: '/tst!'
});
//bard.mockService(haConfig, {});
console.log('ha config2', haConfig.getTemplateUrl());
var html = angular.element("<div explore-hero></div>");
console.log('htl',haConfig.getTemplateUrl());
scope = $rootScope.$new();
//templateCache
element = $compile(html)(scope);
//console.log(haConfig.getTemplateUrl(html));
scope.$digest(element);
console.log('missing text',haConfig.getTemplateUrl(html));
controller = element.scope();
console.log("element", element);
我不知道为什么我得到一个空字符串。我正在创建 html 文件,但其中没有任何内容。
我想知道是否应该让 templatesCached 文件 出现在我的开发工具的文件夹中?此外,是否应在 karma.conf.js
中的文件数组中引用文件现在我引用了 html 个文件?我试过 js 文件,但似乎没有任何效果
这个问题实际上很容易解决。我很想删除它,但如果有人有类似的问题,我希望它可用。
在karma.conf.js里面我有一个
stripPrefix: 'rootDirectory' // was already in place
stripSuffix: '.js.html' // I had to make a strip on the templatesCached
prependSuffix: '.html' // this is what I was searching for
当预处理器 运行 它模板缓存了我所有的文件。然而,它们并没有像我期望的那样结束,我无法阅读它们。我已经正确设置了模块和其他部分。