определение приложения в отдельном файле в угловых JS

0

Я пытаюсь разделить мой существующий код на разные файлы. Я объявлял ng-app в файле js, как показано ниже:

 define(['routes-admin', 'services/dependencyResolverFor'], function (routes, dependencyResolverFor) {
        var app = angular.module('app', ['ngRoute', 'formly', 'xeditable', 'toaster', 'ngAnimate', 'ui.bootstrap']);
      app.config([
                '$routeProvider',
                '$locationProvider',
                '$controllerProvider',
                '$compileProvider',
                '$filterProvider',
                '$provide',
                '$httpProvider',

                function ($routeProvider, $locationProvider, $controllerProvider, $compileProvider, $filterProvider, $provide, $httpProvider) {
                    app.controller = $controllerProvider.register;
                    app.directive = $compileProvider.directive;
                    app.filter = $filterProvider.register;
                    app.factory = $provide.factory;
                    app.service = $provide.service;
                    $httpProvider.interceptors.push('middleware');
                ])
        return app;
        });

и html-код выглядит так:

<!DOCTYPE html>
<html >
<head>
    <meta charset="utf-8"/>
    <title>title</title>
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link href="css/font-awesome.min.css" rel="stylesheet"/>
    <link href="css/style.css" rel="stylesheet"/>
    <link href="css/style-blue1.css" rel="stylesheet" id="style_color"/>
    <link href="css/jstree-themes/default/style.min.css" rel="stylesheet">
    <link href="lib/toaster/toaster.css" rel="stylesheet">
    <script type="text/javascript" src="lib/intro.js"></script>
</head>
<body ng-app="app">
<div id="navbar">

</div>
<div id="container">
    <button class="btn" ng-click="functions()">funvtions</button>
</div>
<script type="text/javascript" src="lib/require.js"></script>
<script type="text/javascript" src="lib/angular/angular.js"></script>
<script type="text/javascript" src="app/app.js"></script>
<script type="text/javascript" src="lib/angular/angular-route.min.js"></script>
<script type="text/javascript" src="lib/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="app/factories/MainViewFactory.js"></script>
<script type="text/javascript" src="app/controllers/MainViewController.js"></script>
<script type="text/javascript" src="lib/jstree.min.js"></script>
</body>
</html>

в сегменте скриптов я включил app.js, который является js файлом выше. но после запуска кода он делает ошибку: не удалось создать экземпляр приложения.

помоги мне в этом

  • 0
    Попробуйте переместить все ваши app/ js после всех библиотек.
  • 0
    @sailens он был там первым и проблема была та же

1 ответ

0
Лучший ответ

Эта классическая проблема, когда зависимости не выполняются

<script type="text/javascript" src="app/app.js"></script>
<script type="text/javascript" src="lib/angular/angular-route.min.js"></script>

вы загружаете угловой маршрут после приложения, так что инъекция зависимостей не выполняется

хотя вы должны загрузить jQuery перед угловым, тогда angular.element будет использовать селектора jQuery

  • 0
    Я проверил всю эту конфигурацию, но проблема не в этом. в вашем случае это делает больше ошибки @maurycy
  • 0
    Вы можете скопировать вставить точную ошибку? Сказать, что это не работает, не очень полезно

Ещё вопросы

Сообщество Overcoder
Наверх
Меню