链接在具有 node.js 和 ejs 的多页站点中不起作用
Links not working in multipage site with node.js and ejs
我在node.js/ejs中的多页网站出现问题。 我认为这是一个路线问题,但我相信我的路线设置正确。 我的索引页面呈现正常,但是当我尝试访问页面上的链接时,出现"无法获取/"错误。
我的相关前端代码:
<nav id="main_nav">
<a class="button_horizontal" href="index.ejs">HOME</a>
<a class="button_horizontal" href="about.ejs">ABOUT</a>
<a class="button_horizontal" href="portfolio.ejs">PORTFOLIO</a>
<a class="button_horizontal" href="events.ejs">EVENTS</a>
</nav>
我的相关节点.js代码:
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use(favicon(path.join(__dirname, 'public/images', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.set('view options', __dirname + '/views/pages/layout');
app.set('images', __dirname + '/public/images');
app.use('/', routes);
app.use('/users', users);
// Create server
var server = http.createServer(app).listen(4000,function(){
console.log("We have started our server on port 4000");
});
// Load website
app.get('/', function(req, res) {
res.render('index', { });
});
还有我的文件结构:
views/
index.ejs
about.ejs
portfolio.ejs
events.ejs
public/
css/
images/
js/
routes/
index.js
users.js
如果有人能发现我缺少的内容,我将不胜感激,因为我似乎找不到任何为网站使用多个页面的教程!
它不起作用,因为<a class="button_horizontal" href="index.ejs">HOME</a>
您指向index.ejs
页面,而不是节点.js应用程序的任何路由。
相反,你应该有
<a class="button_horizontal" href="/">HOME</a>
<a class="button_horizontal" href="/about">ABOUT</a>
<a class="button_horizontal" href="/portfolio">PORTFOLIO</a>
<a class="button_horizontal" href="/events">EVENTS</a>
并在应用程序中.js
app.get('/', function(req, res) {
res.render('index', { });
});
app.get('/about', function(req, res) {
res.render('about', { });
});
app.get('/portfolio', function(req, res) {
res.render('portfolio', { });
});
app.get('/events', function(req, res) {
res.render('events', { });
});
如果您有任何疑问,请告诉我。
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 监视函数从服务返回不起作用,但作用域函数起作用
- 幻灯片滚动javascript不起作用
- 简单的javascript在Shopify中不起作用
- Recaptcha在IE7和IE8中不起作用
- Ember Data DS.Model's set函数不起作用
- 引导工具提示在实时站点上不起作用,但在控制台上运行良好
- 当我将javascript代码放在外部站点.js文件中时,Ajax页面方法不起作用
- AJAX/jquery 在返回的 PHP 站点上不起作用
- html 站点中的菜单项不起作用
- 引导弹出框在 joomla 站点上不起作用
- 链接在具有 node.js 和 ejs 的多页站点中不起作用
- 幻灯片在下载的站点中不起作用
- jQuery 在内联网站点上不起作用
- 为什么我的 javascript 在测试环境中工作,但在实时站点上不起作用
- Javascript 谷歌地理位置在实时站点中不起作用
- 跨站点ajax请求不起作用
- 站点覆盖不起作用&;未捕获的ReferenceError:未定义closeav &;
- 移动站点中的呼叫链接不起作用
- 我的脚本在wordpress静态站点中不起作用