好的,首先我从凉亭安装这个:
bower install angular-underscore-module
然后在modules / core / clients / app / config.js中,在第7行我添加了注入:
var applicationModuleVendorDependencies = ['ngResource', 'ngAnimate', 'ngMessages', 'ui.router', 'ui.bootstrap', 'ui.utils', 'angularFileUpload', 'underscore'];
将它注入我的控制器,在modules / articles / client / controllers / articles.client.controller.js中 我已经添加了这样的内容:
angular.module('articles').controller('ArticlesController', ['$scope', '$stateParams', '$location', 'Authentication', 'Articles', '_',
function ($scope, $stateParams, $location, Authentication, Articles, _) {
然后,我有这个错误:
angular.js:13920 Error: [$injector:undef] Provider '_' must return a value from $get factory method.
然后在这篇文章中: Provider 'xx' must return a value from $get factory method in AngularJs
它说,我应该在返回前插入{而不是在下一行,但是,我找不到返回。我在这里做错了吗?请建议。感谢。
答案 0 :(得分:1)
下划线将自身附加到窗口对象。您不需要在控制器中包含依赖项。但是如果你还想使用' _'你可以这样做:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
switch (requestCode) {
case Common.Action_Gallery:
if (data != null) {
Uri selectedImage = data.getData();
String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
}
break;
}
}
}
然后你可以包括' _'作为控制器中的依赖项。
答案 1 :(得分:0)
发现它!
在你的config / assets / default.js,client.lib.js中,你必须包括underscore.min.js和angular-underscore-module.js作为下面的代码:
[...]
'public/lib/underscore/underscore-min.js',
'public/lib/angular-underscore-module/angular-underscore-module.js',
[...]