可以将<script>(或<style>)标记提取到新的单独文件中的GULP模块

2022-02-23 00:00:00 module javascript html gulp

是否有可以将<script>(或<style>)标签提取到单独文件中的GULP模块?

例如:

原始HTML文件

<html>
    <body>
        <style>
            .my-style{
                background:red;
            }
        </style>

        <div class="my-style">
            hello
        </div>

        <script>
            var MyScript = function(){
                console.log("hello");
            }
        </script>
    </body>
</html>

新建HTML文件

<html>
    <body>
        <div class="my-style">
            hello
        </div>
    </body>
</html>

新建CSS文件

.my-style{
    background:red;
}

新建JS文件

var MyScript = function(){
    console.log("hello");
};

解决方案

要将内联脚本提取到您可以使用的外部.js文件,可以使用Cripser-https://www.npmjs.com/package/gulp-crisper

.pipe(crisper({
      scriptInHead: true,
      onlySplit: false
    }))

虽然我找不到任何可以将内联CSS提取到外部文件的内容,但您至少可以使用替代选项"gulp-minify-inline"缩小内联CSS-https://www.npmjs.com/package/gulp-minify-inline

相关文章