如何使用 Bower 组件文件的正确路径设置节点项目
how to setup node project with the proper paths to bower component files
我正在尝试从这里 运行 示例应用程序聊天应用程序。sample chat
我已经安装了所有节点模块和凉亭组件。我的所有 3 个项目 运行ning 在命令提示符下都没有错误。但是我不明白为什么没有找到凉亭组件?我做了一些搜索,但我发现的一些解决方案没有用。除了 404 错误之外,没有其他错误消息。
相关代码(我相信)。总共 3 个项目,所有项目都包含引用路径的文件
我也在研究 windows 10
app.js 在聊天主应用中
var express = require('express'),
path = require('path'),
cookieParser = require('cookie-parser'),
bodyParser = require('body-parser');
var routes = require('./routes');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', routes.index);
app.set('port', process.env.PORT || 3000);
var server = app.listen(app.get('port'), function() {
// log a message to console!
});
module.exports = app;
index.ejs 在同一项目中
<head>
<title>scotch-chat</title>
<link rel="stylesheet" href="css/app.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="libs/angular-material/angular-material.css">
<script src="libs/angular/angular.js"></script>
<script src="http://localhost:2015/socket.io/socket.io.js"></script>
<script type="text/javascript" src="libs/angular-animate/angular-animate.js"></script>
<script type="text/javascript" src="libs/angular-aria/angular-aria.js"></script>
<script type="text/javascript" src="libs/angular-material/angular-material.js"></script>
<script type="text/javascript" src="libs/angular-socket-io/socket.js"></script>
<script type="text/javascript" src="libs/angular-material-icons/angular-material-icons.js"></script>
<script src="js/app.js"></script>
聊天服务器项目
index.js
//Import all our dependencies
var express = require('express');
var mongoose = require('mongoose');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
//Set our static file directory to public
app.use(express.static(__dirname + 'public'));
//Route for our index file
app.get('/', function(req, res) {
//send the index.html in our public directory
res.sendfile('index.html');
});
聊天网络应用程序
server.js
var express = require('express'),
path = require('path'),
cookieParser = require('cookie-parser'),
bodyParser = require('body-parser');
var routes = require('./routes');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', routes.index);
app.set('port', process.env.PORT || 4000);
var server = app.listen(app.get('port'), function() {
// log a message to console!
console.error('Port at 4k');
});
module.exports = app;
index.ejs 在同一项目中
<head>
<title>scotch-chat</title>
<link rel="stylesheet" href="css/app.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="libs/angular-material/angular-material.css">
<link rel="stylesheet" href="libs/MaterialDesign/css/materialdesignicons.css">
<script src="libs/angular/angular.js"></script>
<script type="text/javascript" src="libs/jquery/dist/jquery.min.js"></script>
<script src="http://localhost:2015/socket.io/socket.io.js"></script>
<script type="text/javascript" src="libs/angular-animate/angular-animate.js"></script>
<script type="text/javascript" src="libs/angular-aria/angular-aria.js"></script>
<script type="text/javascript" src="libs/angular-material/angular-material.js"></script>
<script type="text/javascript" src="libs/angular-socket-io/socket.js"></script>
<script type="text/javascript" src="libs/angular-material-icons/angular-material-icons.js"></script>
<script src="js/app.js"></script>
默认情况下,Bower 使用目录 bower_components,这应该在您的解决方案根文件夹中。该目录可以在 bower 配置文件 .bowerrc 上被覆盖(尝试在您的解决方案根文件夹中查找它。
我假设您 运行 命令 bower install 在您的解决方案根文件夹中,因此,它必须在某个地方,否则,bower install 将在没有更改的情况下关闭。如果你想让它再次安装使用命令:
bower install --force
请确保您已安装 git(某些包和依赖项可能需要)和节点,访问解决方案根路径和 运行 以下命令:
npm install
(假设其中一个包是 bower)运行:
bower install
如果不是运行:
npm install bower -g (to install globally and so that you can run bower from any folder) then;
npm install bower (to install on your solution) then;
bower install
应安装所有包及其依赖项。
关于 bower 包管理器的更多信息,请参考 bower and about .bowerrc and other options refer to bower configuration。
在您提到的存储库中 scotch.io, if you browse to the the scotch-chat-main-app 您会看到一个名为 .bowerrc 的文件存在,检查它您会看到:
{
"directory" : "app/public/libs",
"proxy":"http://127.0.0.1:8080",
"https-proxy":"http://127.0.0.1:8080",
"strict-ssl" : false
}
因此,所有 Bower 包都将安装在该目录中。
注意:由于您使用的是 windows 10,因此请确保您 运行 在具有管理员权限的终端 windows 中完成上述所有安装。
如果你在 iisnode 下 运行ning node / express,有一些陷阱..你没有提到它,所以我会假设你不是,所以,运行 解决方案,只需 运行 命令:
gulp run
让我知道进展如何。
我正在尝试从这里 运行 示例应用程序聊天应用程序。sample chat 我已经安装了所有节点模块和凉亭组件。我的所有 3 个项目 运行ning 在命令提示符下都没有错误。但是我不明白为什么没有找到凉亭组件?我做了一些搜索,但我发现的一些解决方案没有用。除了 404 错误之外,没有其他错误消息。 相关代码(我相信)。总共 3 个项目,所有项目都包含引用路径的文件 我也在研究 windows 10 app.js 在聊天主应用中
var express = require('express'),
path = require('path'),
cookieParser = require('cookie-parser'),
bodyParser = require('body-parser');
var routes = require('./routes');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', routes.index);
app.set('port', process.env.PORT || 3000);
var server = app.listen(app.get('port'), function() {
// log a message to console!
});
module.exports = app;
index.ejs 在同一项目中
<head>
<title>scotch-chat</title>
<link rel="stylesheet" href="css/app.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="libs/angular-material/angular-material.css">
<script src="libs/angular/angular.js"></script>
<script src="http://localhost:2015/socket.io/socket.io.js"></script>
<script type="text/javascript" src="libs/angular-animate/angular-animate.js"></script>
<script type="text/javascript" src="libs/angular-aria/angular-aria.js"></script>
<script type="text/javascript" src="libs/angular-material/angular-material.js"></script>
<script type="text/javascript" src="libs/angular-socket-io/socket.js"></script>
<script type="text/javascript" src="libs/angular-material-icons/angular-material-icons.js"></script>
<script src="js/app.js"></script>
聊天服务器项目 index.js
//Import all our dependencies
var express = require('express');
var mongoose = require('mongoose');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
//Set our static file directory to public
app.use(express.static(__dirname + 'public'));
//Route for our index file
app.get('/', function(req, res) {
//send the index.html in our public directory
res.sendfile('index.html');
});
聊天网络应用程序 server.js
var express = require('express'),
path = require('path'),
cookieParser = require('cookie-parser'),
bodyParser = require('body-parser');
var routes = require('./routes');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', routes.index);
app.set('port', process.env.PORT || 4000);
var server = app.listen(app.get('port'), function() {
// log a message to console!
console.error('Port at 4k');
});
module.exports = app;
index.ejs 在同一项目中
<head>
<title>scotch-chat</title>
<link rel="stylesheet" href="css/app.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="libs/angular-material/angular-material.css">
<link rel="stylesheet" href="libs/MaterialDesign/css/materialdesignicons.css">
<script src="libs/angular/angular.js"></script>
<script type="text/javascript" src="libs/jquery/dist/jquery.min.js"></script>
<script src="http://localhost:2015/socket.io/socket.io.js"></script>
<script type="text/javascript" src="libs/angular-animate/angular-animate.js"></script>
<script type="text/javascript" src="libs/angular-aria/angular-aria.js"></script>
<script type="text/javascript" src="libs/angular-material/angular-material.js"></script>
<script type="text/javascript" src="libs/angular-socket-io/socket.js"></script>
<script type="text/javascript" src="libs/angular-material-icons/angular-material-icons.js"></script>
<script src="js/app.js"></script>
默认情况下,Bower 使用目录 bower_components,这应该在您的解决方案根文件夹中。该目录可以在 bower 配置文件 .bowerrc 上被覆盖(尝试在您的解决方案根文件夹中查找它。
我假设您 运行 命令 bower install 在您的解决方案根文件夹中,因此,它必须在某个地方,否则,bower install 将在没有更改的情况下关闭。如果你想让它再次安装使用命令:
bower install --force
请确保您已安装 git(某些包和依赖项可能需要)和节点,访问解决方案根路径和 运行 以下命令:
npm install
(假设其中一个包是 bower)运行:
bower install
如果不是运行:
npm install bower -g (to install globally and so that you can run bower from any folder) then;
npm install bower (to install on your solution) then;
bower install
应安装所有包及其依赖项。 关于 bower 包管理器的更多信息,请参考 bower and about .bowerrc and other options refer to bower configuration。
在您提到的存储库中 scotch.io, if you browse to the the scotch-chat-main-app 您会看到一个名为 .bowerrc 的文件存在,检查它您会看到:
{
"directory" : "app/public/libs",
"proxy":"http://127.0.0.1:8080",
"https-proxy":"http://127.0.0.1:8080",
"strict-ssl" : false
}
因此,所有 Bower 包都将安装在该目录中。 注意:由于您使用的是 windows 10,因此请确保您 运行 在具有管理员权限的终端 windows 中完成上述所有安装。
如果你在 iisnode 下 运行ning node / express,有一些陷阱..你没有提到它,所以我会假设你不是,所以,运行 解决方案,只需 运行 命令:
gulp run
让我知道进展如何。