Я использую CoffeeScript. Я создал директиву, чтобы деформировать элемент jquery ui datepicker. Я хочу иметь возможность использовать эту директиву в нескольких контроллерах, но я могу заставить ее работать, если я добавлю ее в каждый файл coffeescript для каждого вида, которое я использую, как показано ниже.Использование угловых директив во внешних файлах js
$ = jQuery
adminApp = angular.module("adminApp", [])
adminApp.controller "OrganizationCreateCtrl", ($scope) ->
$scope.create =() ->
$.ajax 'CreateOrganization',
type: 'POST'
dataType: 'json'
data:
organizationName: $scope.orgName
error: (jqXHR, textStatus, errorThrown) ->
$scope.success = ''
$scope.isSuccess = false
$scope.error = 'Could not generate Organization'
$scope.isError = true
$scope.$apply()
success: (data, textStatus, jqXHR) ->
if data.Success is true
$scope.success = 'Organization Created Succefully. Organization ID: ' + data.Id
$scope.isSuccess = true
$scope.isError = false
$scope.error = ''
$scope.$apply()
else
$scope.success = ''
$scope.isSuccess = false
$scope.error = 'Could not generate Organization'
$scope.isError = true
$scope.$apply()
adminApp.directive 'datepicker', ->
restrict: 'A'
require: 'ngModel',
link: (scope, element, attrs, ngModelCtrl) ->
$ ->
element.datepicker
dateFormat: "yy-mm-dd"
onSelect: (date) ->
ngModelCtrl.$setViewValue date
scope.$apply()
Я хочу, чтобы иметь возможность использовать эту директиву, не включая его в каждом контроллере я создаю, но не могу показаться, чтобы заставить его работать.
Я хотел бы создать внешний файл coffeescript только с директивой и использовать его на странице просмотра, к которой относится этот кофейник, но не может заставить его работать.
Опять же, похоже, что это должно быть легко, но ничего, что я устал, не работало, несмотря на то, что вы искали ответ на большой длины.
В нижней строке, как я могу предоставить директиву внешнему файлу coffeescript и использовать его в любом контроллере в своем приложении, вместо того, чтобы добавлять его в каждый файл контроллера, который я создаю.