我是Angular的新手,我克隆了一个回购(角度滑块)。我的问题是,当我输入控制台grunt服务时,它会显示警告:任务"服务"未找到。使用--force继续。我一直在搜索互联网,我已经尝试了一切。我不知道哪个是我问题的根源。如果我输入节点-v,控制台给我这个v0.10.33,如果我键入npm -v我得到这个2.11.2我已经有一个Gruntfile.js和一个package.json和bower.json在我的同一级文件夹根项目目录。任何帮助,将不胜感激。
编辑:
这是我的Gruntfile.js
module.exports = function(grunt){
'use strict';
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
srcFiles: [
'src/rangeInputSupported.js',
'src/angular-slider.js'
],
concat: {
prod: {
src: ['<%= srcFiles %>'],
dest: 'build/<%= pkg.name %>.js'
}
},
uglify: {
options: {
banner: '/*\n <%= pkg.name %> v<%= pkg.version %> \n (c) 2013-2014 Venturocket, Inc. http://github.com/Venturocket \n License: MIT \n*/\n'
},
build: {
src: ['<%= srcFiles %>'],
dest: 'build/<%= pkg.name %>.min.js'
}
},
jshint: {
options: {
jshintrc: true,
reporter: require('jshint-stylish')
},
all: {
src: [
'Gruntfile.js',
'karma.conf.js',
'src/**/*.js',
'test/**/*.js'
],
options: {
force: true
}
}
}
});
// Load the plugin that provides the "uglify" task.
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-jshint');
// Default task(s).
grunt.registerTask('default', ['jshint:all', 'uglify', 'concat:prod']);
grunt.loadNpmTasks('grunt-contrib-concat');
};
我的bower.json看起来像这样:
{
"name": "angular-slider",
"version": "0.3.2",
"main": "./build/angular-slider.js",
"ignore": [
"**/.*",
"node_modules",
"components",
"lib",
"src",
"test",
".g*",
".editorconfig",
".jshintrc",
".travis.yml",
"Gruntfile.js",
"karma.conf.js",
"*.html"
],
"dependencies": {
"angular": "~1.2",
"angular-touch": "~1.2"
},
"devDependencies": {
"angular-mocks": "*",
"angular-scenario": "*"
},
"resolutions": {
"angular": "v1.2.16"
}
}
答案 0 :(得分:3)
如果您没有安装grunt,通常会出现这种情况。如果你没有它,你也应该安装凉亭。
尝试像这样安装grunt:npm install -g grunt-cli
。此外,您应该在项目文件npm install && bower install
中运行,以下载您在项目中所需的所有依赖项。我希望它有所帮助。
答案 1 :(得分:1)
确保您在gruntFile.js中“提供”了registeredTask。
如果它在那里,那么你的系统上可能没有安装grunt。从npm安装grunt-cli以及系统上的bower。这样你的文件夹结构中就有了node_modules。
使用以下命令:
npm install -g grunt-cli
npm install --save
bower install --save
这应该可以解决问题。
答案 2 :(得分:0)
只做
grunt
......靠自己。这将运行“默认”任务
我们可以在GruntFile.js的底部看到你有'默认'任务的定义
grunt.registerTask('default', ['jshint:all', 'uglify', 'concat:prod']);
...我认为这将是启动服务器的那个
我原以为“服务”是一个标准的任务名称(也是别名“server”)但是我看到grunt文件没有定义,而“默认”(只是grunt
命令自己)启动服务器。也许这是Angular(?)