我可以在 route/index.js 中有以下配置吗?
exports.PageA = function(req, res) {
...
...
if(req.method == 'GET') {
if (condition1) {
//PageA has 2 .js files
res.render('PageA', { title: 'A', layout: false});
}
else {
//PageB has 2 + 2 .js files
res.render('PageB', { title: 'B', layout: false});
}
}
else {
res.render('PageC', { title: 'B', layout:'some_other_layout' });
}
};
案例:mywebsite.com/PageA 在 condition1 通过时正确呈现(所有脚本都正确加载并执行)
问题:但是当条件 1 失败时,我得到了 PageB 渲染,PageB.ejs 中的 javascripts 被渲染但不执行,比如说,在 $document.Ready() 上。奇怪的是,如果我在浏览器中“刷新”已经呈现的 PageB,那么 JavaScript 就会正确执行。
作为一条信息:我在所有“< script >...”中使用 defer="defer" 标签
我在这里想念什么?