Comments (10)
I don't think this has anything to do with uglifyJS, and is really in html-minifier. If the webpack build is being optimized/minimized per https://github.com/webpack/html-loader/blob/5fb1cf3b29254d5e47d598f009434aa7c52fa2e1/index.js#L60 I consistently hit this issue. If it is not being minimized, everything works correctly.
I've tried using this loader configuration (using the examples provided in the html-minifier comment linked above), but it will still fail to load the .html modules:
{
test: /\.html$/,
loader: 'html',
query: {
minimize: true,
// Teach html-minifier about Angular 2 syntax
customAttrSurround: [ [/#/, /(?:)/], [/\*/, /(?:)/], [/\[?\(?/, /(?:)/] ],
customAttrAssign: [ /\)?\]?=/ ],
}
}
Edit: In the meantime, I disable minification of my HTML templates even in prod builds with:
{ test: /\.html$/, loader: `html?-minimize` }
from html-loader.
html?-minimize
solved it for me, as @doxavore suggested.
from html-loader.
This is a duh but caught me. Make sure if you are also using interpolate or some other query param you include the & for example html?interpolate=require&-minimize
from html-loader.
kangax/html-minifier#289 (comment) includes examples of custom options customAttrAssign
and customAttrSurround
:
{
customAttrSurround: [ [/#/, /(?:)/], [/\*/, /(?:)/], [/\[?\(?/, /(?:)/] ],
customAttrAssign: [ /\)?\]?=/ ]
}
However, I'm not sure how we manage to get that into query options. Are there any other options to get custom JS data or code into the html-loader pipeline, so this may be done without (1) hacking something angular2-specific or (2) forking?
from html-loader.
I just tried and it works for me. I use a (click)="..."
on a template that is loaded with html-loader and then ran uglify to it and it works.
from html-loader.
Ohh, I get you now. I am not using minimize no.
from html-loader.
I have been chasing this the last couple of hours. For me, the html-loader completely hung when trying to minimize (implicitly triggered via the UglifyJsPlugin
) the style-binding here:
<div class="item active carousel-item-type carousel-item-type-html" data-itemno="0" style="padding-left: 0; padding-right: 0;"
[style.background-image]="'url(\'' + svgUrl + '\')'"
>
</div>
The moment I excluded the second line from that template, it stopped hanging as it did when explicitly disabling minification on the loader.
from html-loader.
html?-minimize did the trick for me as well .
from html-loader.
html?-minimize
fixed it for me too.
from html-loader.
https://github.com/webpack-contrib/html-loader/releases/tag/v1.0.0-alpha.0
from html-loader.
Related Issues (20)
- How to trigger re-compile if partial changed? HOT 4
- when to publish tag on 'fix(getOptions): deprecation change' HOT 1
- Style attribute with expansion variable is omitted when minimized HOT 2
- Favicon: Module not found HOT 5
- After upgrading from v1.3.2 to v2.1.2, <%= require("html-loader!x.html") %> is not available. HOT 1
- Parse errors with html content containing < HOT 4
- this.getOptions is not a function HOT 1
- params “source: false” is falied HOT 2
- remove documentation of use cases involving extract-loader HOT 4
- When extending default sources, tag is not optional HOT 1
- Emits seperate js file even when target is `webworker` and max chunks is 1 HOT 6
- Readd root as webpack resolve.roots does not allow conditionally resolve HOT 3
- Possibility to extend default 'minimize' options HOT 7
- require(...) is not a function - PostHTML HOT 1
- David and HTML Loader badges are broken HOT 5
- ignoring noscript HOT 9
- DIfferent behavior in development and production modes HOT 1
- Two Created Files HOT 1
- Webpack 5 output.clean deletes loaded resources on rebuild HOT 2
- HTML comments don't show up correctly in the documentation on webpack.js.org HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from html-loader.