2016-09-27 283 views
0

我無法找到使用asp網絡核心與Angular 1的教程,而無需使用Razor。 (我只想使用html)int web項目與web api解決方案,將獲得請求。asp網絡核心與角

我一直在努力,使其工作,但由於某種原因,我不能讓UI路由器的工作:

一樣,如果我做http://localhost:12112/index.html它會顯示在頁面correcty但是當我做`http://localhost:12112/home這是我想要什麼..它說它無法找到它。

我的文件夾結構是:

wwwroot 
    -app 
    -home 
     -myhome.controller.js 
     -myhome.module.js 
     -myhome.router.js 
     -myhome.html 
    -index.html 

myhome.router.js

(function() { 
    'use strict'; 

    angular 
     .module('hoa.myhome') 
     .config(routeConfig); 

    routeConfig.$inject = ['$stateProvider', '$urlRouterProvider'] 

    function routeConfig($stateProvider, $urlRouterProvider) { 

     $urlRouterProvider.otherwise('/'); 
     $stateProvider 

     .state('home', { 
      url: '/', 
      templateUrl: '/app/home/myhome.html'), 
      controller: 'myHomeController', 
      controllerAs: 'myhctrl' 
     }) 
    }; 

})(); 

什麼可能我會丟失?或者,如果你可以點我一個很好的教程,而無需使用角剃鬚刀和.net核心,我將不勝感激。

+0

您還沒有定義家庭路線。您的主頁是'/'。你在使用IIS嗎?如果是這樣,您可以將您的默認文檔更改爲index.html,這樣您就不必在瀏覽器中指定它。 – Mickers

+0

但我不想在url中顯示/index.html,我希望它是http:// localhost /,那麼如果我/家,它會帶來家庭部分。是的,它是IIS – jedgard

+0

我已經創建了一個[教程](https://github.com/fabriciokoch/AspnetcoreAngular)使用asp.net核心和angularjs。在那裏,我使用HomeController來提供索引頁面(這很容易),但是您可以在wwwroot文件夾中創建一個index.html。 –

回答

1

如果你想要的是純HTML和對於一個可以像處理角色一樣處理路由的SPA的JavaScript,那麼你可以不用添加一個新的Project到解決方案中,而是添加一個新的Empty網站,這個網站將是純html和javascript文件。

需要考慮的事情:
1.這將在不同的端口/域運行,所以你必須爲Web API配置CORS
2.你不會有任何渲染端功能可用,對一切將是客戶端側
3.通常視覺工作室將網站吸引到解決方案,但如果您不想在創建時將它放在您想要的位置,請將其放置在不同的位置「用戶/文檔/ VSVersion/WebSites /」上

0

要打開第一頁index.cshtml,您需要將您的家庭控制器

public IActionResult Index(){ 
    return View(); 
} 

這將打開該網站上使用的操作。然後,在你index.cshtml

div ng-app="myApp"> 
     <ui-view></ui-view> 
</div> 

<ui-view></ui-view>可以與您的角度HTML文件進行填充和URL可以進行設置和改變你的ui-router

+0

我不使用剃鬚刀(我不想)我只是想要純html - 這是可能的嗎?我只是打電話給api,將我的模型返回到我的角度控制器 – jedgard

+0

如果您沒有添加HomeController來爲您的「/」URL提供服務,那麼您需要訪問localhost/index.html# !/ home –

+0

唉太可怕了,謝謝你的輸入 – jedgard