tjanczuk / iisnode

Hosting node.js applications in IIS on Windows
Other
1.85k stars 587 forks source link

babel-register doesn't work #518

Open jhiswin opened 8 years ago

jhiswin commented 8 years ago

http://stackoverflow.com/questions/37897843/iisnode-not-working-with-babel/37915545 babel-register appears to be trying to write the local profile.

jhiswin commented 8 years ago

For those looking for a workaround, currently it's just to use node.js (probably nodemon) directly when developing. Use iisnode after compiling.

Otherwise you will have to set up a watchify pipeline to build your scripts using babel for iisnode to serve.

matterker commented 8 years ago

For development you can disable the cache with an app configuration setting in the web.config:

<configuration>
  <appSettings>
    <add key="BABEL_DISABLE_CACHE" value="true" />
  </appSettings>
  [...]
</configuration>

Additionally you can change the cache location if using babel/register in production: https://babeljs.io/docs/usage/require/#environment-variables

(Works on my machine :)

buinauskas commented 8 years ago

Modified my web.config this way and this is now resolved:

<configuration>
  <appSettings>
    <add key="BABEL_CACHE_PATH" value="C:\Babel\cache.json" />
  </appSettings>
  <system.webServer>
    <iisnode promoteServerVars="LOGON_USER" />
    <handlers>
      <add name="iisnode" path="index.js" verb="*" modules="iisnode" />
    </handlers>
    <rewrite>
      <rules>
        <rule name="test">
          <match url="/*" />
          <action type="Rewrite" url="index.js" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Thanks a lot!