2017-09-25 49 views
0

随着JS框架不断增加的库(从我上次构建网站到2014年),有一个简单的JS替换/替代PHP的'include'函数。或者,PHP还包含一个包含大量代码的相关方法?PHP的'现代JS方法'包含'函数

我正在建立一个网站,并希望实现一些基本功能,如'包括'页脚,标题,菜单等,但宁愿不让我所有的页面.php - 感觉有点笨重和不必要。

我发现了一个相关的职位here引用杰奇但它是一个更具体一点到GitHub上。任何在正确的方向指针赞赏!

+0

'include'仍是包括PHP文件等文件的方法。这是没有别的选择。 –

+1

打包你的JavaScript是这里最好的选择,具有其他优点,如树木摇晃,es6 trans-piling等..看看webpack。 – Keith

回答

1

自从我第一次回答没有覆盖感兴趣的问题,我决定全面修改和替换答案。在这里,我们去..

解决方案

1 - JQuery的load()函数

<!-- LOAD JQUERY --> 
<script src="http://code.jquery.com/jquery-1.12.4.js"></script> 

<!-- "INCLUDE" external files with code --> 
<script> 
    $("#header").load("header.html"); 
    $("#footer").load("footer.html"); 
</script> 

2 - NPM一口包,它可以让你包括文件和传递一些参数/值

https://www.npmjs.com/package/gulp-file-include

<!DOCTYPE html> 
<html> 
    <body> 
    @@include('./header.html') 
    @@include('./main.html') 
    </body> 
</html> 

一口任务的示例:

var fileinclude = require('gulp-file-include'), 
    gulp = require('gulp'); 

    gulp.task('html', function() { 
     return gulp.src(['./src/html/views/*.html']) 
      .pipe(fileInclude({ 
       prefix: '@@', 
       basepath: 'src/html' 
      })) 
      .pipe(gulp.dest('./build')); 
    }); 

3 - 经由文件撰写功能纯JavaScript和包括通过SRC与它脚本

<script type="text/javascript" src="header.js"></script> 

4 - 请求的附加数据,并将其置于纯AJAX请求它应该被放置在页面

5 - SSI(服务器端包含),正如我在评论中提及它

6 - I帧(不是最好的方式,TH ough)

7 - ASP/JSP服务器脚本包括(作为替代PHP服务器脚本包括)

此处了解详情:

Common Header/Footer with static HTML

Make header and footer files to be included in multiple html pages

希望你能找到最好的方式将满足您的需求。

+0

给予好评花时间和显示一些激情!感谢您分享您的想法,我可能需要一些更具体的内容,因为我唯一的要求是在JS中包含替代方案,该网站在后端要求方面将会很简单! – Andyjm

+1

谢谢你,对不起不当了解你的目标!与“javascript替代”相比,我主要关注“php”和“框架”单词组合,完全忘记了包含功能。 至于你的目标 - 你有没有想过包括SSI(旧)风格?例如:'<! - #include file =“content.html” - >'。有些人仍然喜欢它。它有很多优点,比如不需要为其他流行的include选项加载jquery,但也有一些要求。 下面是关于ajax-method的详细解释和比较:https://webmasters.stackexchange.com/a/103838 – user268500

+0

这里是关于更喜欢SSI超过ajax的另一种意见:https://stackoverflow.com/a/29858653/8670275 – user268500