问题
I have code like this
<html>
<head>
<link href="bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css">
<link href="path_to_css/some_css.css" rel="stylesheet" type="text/css">
</head>
<body>
...
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="jquery/jquery.min.js"></script>
</body>
</html>
and I need plugin/loader or other way to get my html file with replaced link and script tags to content of this files, is there any way to do it?
Finnaly i wrote own plugin which fit my needs include-file-webpack-plugin
回答1:
It actually can be accomplish with:
npm i --save-dev css-loader to-string-loader
configure your webpack with
module: [ rules: [ { test: /\.css$/, use: ['to-string-loader', 'css-loader'] } ] }
Then in your project you can access the css as string like so
const cssContent= require('path_to_css/some_css.css'); console.log('your css is: ', cssContent.toString());
Or maybe you want inject it manually to the page with:
const boostrap= require('bootstrap/dist/css/bootstrap.min.css'); let style= document.createElement('style'); style.id= 'boostrap'; style.setAttribute('type', 'text/css'); style.innerHTML= boostrap.toString(); document.body.appendChild(style);
Reference
- Inject CSS stylesheet
- css-loader
来源:https://stackoverflow.com/questions/43073673/webpack-inject-js-css-file-content-directly-to-index-html