Наборните нагрузок внешнего модуля AMD AMD, угловой не определен

StackOverflow https://stackoverflow.com//questions/25067360

  •  26-12-2019
  •  | 
  •  

Вопрос

Я знаю, что уже есть несколько подобных вопросов по этой теме, но каким-то образом никто из них не помог. Я хочу использовать Angular.js в проекте, который использует потребности и типографы.

У меня есть модуль, где я использую угловой, чтобы создать сервисный модуль:

/// <reference path="../../../typings/angularjs/angular.d.ts" />
...
var services = angular.module('services', []);
...
export = services;
.

Этот код компилирует без ошибки, но в созданном файле JS есть angular.js зависимость не там:

define(["require", "exports"], function(require, exports) {
...
}
.

И когда я запускаю приложение, браузер жалуется: uncaft formateerror: угловой не определяется

Мое предположение, что как-то я должен импортировать угловые, помимо ссылки на него, но ни один из пути я попробовал.

Вот моя настройка require.js, если необходимо:

require.config({

    paths: {
        angular: '../lib/angular/angular',
        ...
    },
    shim: {
        angular : {exports : 'angular'},
        ...
    }
)}
.

Можешь мне помочь, что здесь не хватает? Спасибо.

Это было полезно?

Решение

Вы пытались добавить следующее в верхнюю часть вашего файла

 /// <amd-dependency path="angular"/>
.

Это должно сделать компилятор TS добавлять угловой в список определений.

Другие советы

Когда вы используете ссылочный комментарий:

/// <reference path="../../../typings/angularjs/angular.d.ts" />
.

Вы говорите компилятору «Я обеспечу, чтобы эта зависимость была доступна во время выполнения».

Если вы хотите загрузить модуль, необходимо использовать вместо этого импорт ...

import angular = require('angular');
.

Установочный способ выполнения нуля - это установить файл angular.d.ts рядом с фактическим файлом angular.js, поэтому путь, который вы указываете в операторе импорта, одинаково в любом случае - в противном случае используйте ваш требуемый Config для Shimmyпуть.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top