使用Angular和Node Routing加载带有css和js的视图

时间:2016-07-24 21:15:28

标签: javascript angularjs node.js angular-ui-router angular-routing

我正在构建一个使用Node和Angular路由的应用程序。我想处理Angular中的所有路由。

文件夹结构:

  • 公共

    • 图片
    • CSS
    • JS​​
    • 分音
      • _search.html
      • home.html的
    • 的index.html
  • SASS

    • 所有sass文件(编译后将转到public / css文件夹)

server.js

var app = express();
var routes = require('./routes/index');
app.use(sassMiddleware({
    // Options
    src: __dirname + '/sass',
    dest: __dirname + '/public',
    debug: true,
    outputStyle: 'compressed'
}));
app.use('/bower_components',  express.static(__dirname + '/bower_components'));
app.use(express.static(__dirname + '/public'));
app.use('/css',  express.static(__dirname + '/css'));
app.use('/js',  express.static(__dirname + '/js'));
app.use('/images',  express.static(__dirname + '/images'));
app.use'/',function(req, res, next){
    res.sendFile(root_dir+'/public/index.html');
}

app.js(angular):我正在使用Angular ui-router进行路由

app.config(function ($stateProvider, $urlRouterProvider, $locationProvider) {
    $stateProvider
        .state('home', {
            url: "/",
            templateUrl: 'partials/home.html'
         })
        .state('search', {
            url: "/search/:token",
            templateUrl: 'partials/_search.html'
        });

    $locationProvider.html5Mode({
        enabled: true,
        requireBase: false
    });

    $urlRouterProvider.otherwise('/404.html');

});

公共/ index.html中

<html>
<head>
    <loads all css and javascript files>
</head>
<body>
    <div ui-view>
    </div>
</body>
</html>

当我执行“http://localhost:3000”时,我可以从partials加载home.html,但是当我执行“http://localhost:3000/search/abcd”时,它会加载带有菜单栏的空白html但无法加载css / js / images和search.html partial。

On the node console, I see the following 404 errors:

example:
GET /search/js/index/mainPageSearchController.js 404 0.285 ms - 62
GET /search/js/index/exploreCitiesController.js 404 0.483 ms - 61
GET /search/js/strechy-main.js 404 0.355 ms - 44

我的文件是从搜索目录加载的,这是错误的。

根据上述代码,当“http://localhost:3000/search/abcd”被点击时,请建议我从partials加载search.html时应该更正哪些内容。

提前致谢

0 个答案:

没有答案