指令/工厂不在生产中

jas*_*328 10 javascript flash heroku angularjs

我有一个指令,为用户打印出flash消息.在我的本地主机上一切正常,但是一旦我在Heroku上测试它,就不会出现flash消息.这是控制器.

angular.module("alerts")

.controller("AlertsController", alertController)

alertController.$inject = ['Flash']

function alertController(Flash) {
  var vm = this;

  vm.flash = Flash;
}
Run Code Online (Sandbox Code Playgroud)

指令......

angular.module("alerts")

.directive('flash', flash);

flash.$inject = ['$timeout'];

function flash ($timeout){
  return {
     restrict: 'E',
     replace: true,
     scope: {
         text: '=',
         type: '='
     },
     template: '<div id="flash_message" class="notification" ng-class="type"> {{text}} hello </div>',
     link: function(scope, element, attrs){
         $timeout(function(){
             element.remove();
         }, 5000);
     }
  }
}
Run Code Online (Sandbox Code Playgroud)

以及处理存储flash消息的工厂.

angular.module("alerts")

.factory("Flash", flash)

function flash() {

  var messages = [];

  var results = {
    messages: messages,
    printMessage: printMessage,
    addMessage: addMessage
  }

  return results;

  function printMessage() {
    return results.messages
  }

  function addMessage(message) {
    results.messages.push(message);
  }
}
Run Code Online (Sandbox Code Playgroud)

我的HTML代码......

<div ng-controller="AlertsController as alerts">
  <div ng-repeat="message in alerts.flash.messages">
    <flash type="message.type" text="message.text"></flash>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

控制台上没有错误.有趣的是在html中显示的flash消息没有加载.

这是localhost中显示的内容.

<div ng-repeat="message in alerts.flash.messages" class="ng-scope">
  <div id="flash_message" class="notification ng-binding ng-isolate-scope success" ng-class="type" type="message.type" text="message.text"> Your link has been copied! hello </div>
</div>
Run Code Online (Sandbox Code Playgroud)

但是关于heroku的制作

<div ng-repeat="message in alerts.flash.messages" class="ng-scope"></div>
Run Code Online (Sandbox Code Playgroud)

我正在通过我的代码创建闪存..

Flash.addMessage({type: "success", text: "Your link has been copied!"});
Run Code Online (Sandbox Code Playgroud)

我的问题是,为什么这不出现在我的生产代码上,但它出现在我的本地主机上,我该如何解决?

jas*_*328 2

重命名我的文件名和指令中的内部函数解决了问题。