从Asp.Net中的*.coffee文件运行coffeescript
本文关键字:文件 运行 coffeescript coffee Asp Net 中的 | 更新日期: 2023-09-27 18:22:08
我安装了"Mindscape Web Workbench"visual studio扩展,并从Nuget添加了LessCoffee引用。
在我的页面上,我写下了这些代码,它正在运行。
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script src="http://jashkenas.github.com/coffee-script/extras/coffee-script.js" type="text/javascript"></script>
<script type="text/coffeescript">
@fonksiyon = () -> alert "I knew it!"
@myalert=(myText)-> alert myText
</script>
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<input type="button" id="deneme" onclick="fonksiyon()" value="Deneme" />
<br />
<input type="button" id="Button1" onclick="myalert('yazi veya uyari')" value="Deneme" /> </asp:Content>
我想运行"Coffee1.coffee"中的相同代码,所以我写了这样的代码:
CoffeeScript.coffee
@fonksiyon = () -> alert "I knew it!"
@myalert=(myText)-> alert myText
在Asp.net页面:
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script src="http://jashkenas.github.com/coffee-script/extras/coffee-script.js" type="text/javascript"></script>
<script src="CoffeeScript1.coffee" type="text/coffeescript"></script>
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<input type="button" id="deneme" onclick="fonksiyon()" value="Deneme" />
<br />
<input type="button" id="Button1" onclick="myalert('yazi veya uyari')" value="Deneme" />
</asp:Content>
但是这个代码不起作用。
CoffeeLess添加web.config:
<httpHandlers>
<add path="*.coffee" type="DotSmart.CoffeeScriptHandler, LessCoffee" verb="*" validate="false" />
<add path="*.less" type="DotSmart.LessCssHandler, LessCoffee" verb="*" validate="false" />
<add path="*.less.css" type="DotSmart.LessCssHandler, LessCoffee" verb="*" validate="false" />
</httpHandlers>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add path="*.coffee" type="DotSmart.CoffeeScriptHandler, LessCoffee" verb="*" name="DotSmart.CoffeeScriptHandler" />
<add path="*.less" type="DotSmart.LessCssHandler, LessCoffee" verb="*" name="DotSmart.LessCssHandler" />
<add path="*.less.css" type="DotSmart.LessCssHandler, LessCoffee" verb="*" name="DotSmart.LessCssHandler2" />
</handlers>
</system.webServer>
我用萤火虫控制了它,并返回了这个错误:
'调用方法[nsIDOMEventListener::handleEvent]时,SyntaxError:第4行保留字"function"'[在此错误上中断]
筛选的chrome urlchrome://firebug/content/net/spy.js
我该怎么办?
谢谢。
这里的信息可能对您的工作有所帮助。
http://blog.dotsmart.net/2011/06/30/lesscoffee/
如果您使用httpHandler提供*.coffee文件,它们会在服务器上转换为JavaScript,因此您的客户端脚本标记实际上应该指定JavaScript:
<script src="CoffeeScript1.coffee" type="text/javascript"></script>