2012-10-30 94 views
1

在我的佈局SignalR未定義不是一個函數

<script src="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Scripts/js")"></script 
<script src="@Url.Content("~/signalr/hubs")" type="text/javascript"></script> 

Scripts in my scripts folder

我有以下並在的Global.asaxApplication_Start()

BundleTable.Bundles.EnableDefaultBundles(); 

SignalR工作正常,但它拋出錯誤

Uncaught TypeError:undefined不是函數

因此,它不適用於捆綁或有其他東西?

+0

你能告訴你如何建立你的' 「〜/腳本/ JS」'捆綁的代碼? –

+0

一切都在問題中。第一行從Scripts文件夾內的每個腳本構建一個包。正如我在回答中所說的那樣,這是問題。 –

+0

很高興你能夠得到它的工作。如果你想了解更多關於創建和使用bundle的信息,請參考http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification –

回答

3

顯然

<script src="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Scripts/js")"></script 

不工作,有些實驗我已經通過移動signalr腳本到不同的文件夾解決了這個問題(腳本/ signalr)和使用我_Layout.cshtml文件中的以下之後。 :

<script src="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Scripts/js")"></script> 
<script src="@Url.Content("~/Scripts/signalr/jquery.signalR-0.5.3.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/signalr/hubs")" type="text/javascript"></script> 
1

就在signalr-xxxjs ...{ n.signalR.version = "1.1.2" }(window.jQuery)之後添加;

結果字符串是:

...{ n.signalR.version = "1.1.2" }(window.jQuery); 
相關問題