Skip to content
This repository has been archived by the owner on Mar 26, 2018. It is now read-only.

Usemin Explanation #1386

Open
adiakritos opened this issue Jan 14, 2017 · 1 comment
Open

Usemin Explanation #1386

adiakritos opened this issue Jan 14, 2017 · 1 comment

Comments

@adiakritos
Copy link

From what I understand, the Usemin task is supposed to transform the files referenced between the html comment tags, and replace those with a new file that's been transformed with the predefined steps.

So for example.. If I have the following in my index.html file:

<!-- build:js({.tmp,app}) scripts/scripts.js -->
<script src="scripts/app.js"></script>
<script src="scripts/controllers/main.js"></script>
<!-- endbuild -->

and the configuration file has the destination in the /dist file, as the config file says here:

useminPrepare: {
  html: '<%= yeoman.app %>/index.html',
  options: {
    dest: '<%= yeoman.dist %>',     <---------- destination
    flow: {
      html: {
        steps: {
          js: ['concat', 'uglify'],
          css: ['cssmin']
        },
        post: {}
      }
    }
  }
},

Then why don't I see the transformed file created and referenced to from within the html file?

I'd expect something like this to be dynamically generated:

   /dist

   -- /styles/styles.css

   -- /scripts/scripts.js

   -- index.html

and within the /dist/index.html I expected to see something like this:

<!-- build:js({.tmp,app}) scripts/scripts.js -->
<script src="scripts/scripts.js"></script>
<!-- endbuild -->

Yet, that's not what I see.

In the config file it states the following about what userminPrepare does:

// Reads HTML for usemin blocks to enable smart builds that automatically
// concat, minify and revision files. Creates configurations in memory so
// additional tasks can operate on them

The 2nd sentence implies that I actually shouldn't expect to see what I described just now, but then my question becomes.. when I serve this /dist file from a service like S3 or wherever, how does the browser know where to fetch those files if they're not being included in a /scripts/ file in their default form?

Do I run a different grunt task that I'm not aware of?

@adiakritos
Copy link
Author

#1320

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant