带有UI路由器的Angularjs材质对话框,传递数据

时间:2018-08-13 12:40:55

标签: angularjs dialog angular-ui-router angularjs-material

我无法使用ui路由器通过状态将数据传递到Dialog控制器,而且我在这个问题上停留了几天=(

Angularjs:1.6.10 Ui路由器:1.0.18 angularjs材质:1.1.9

我现在在做什么:

路由器文件:

{
  name: "myroute",
  url: "/myroute?passingparameter",
  resolve: {
    variableiwant: (MyService, $stateParams) => {
      return MyService.restAPI($stateParams.passingparameter);
    }
  },
  onEnter: [
    "$mdDialog",
    function($mdDialog) {
      return $mdDialog.show(MyModalController);
    }
  ]

我的Dialog控制器文件

import './mycssfile.scss';

class MyModalController{

  constructor($mdDialog) {
    this.$mdDialog = $mdDialog;
  }

  $onInit() {
    console.log(this.variableiwant);
  }

  cancel() {
    this.$mdDialog.cancel();
  }

}

MyModalController.$inject = ['$mdDialog'];

export default {
  resolve: {
    variableiwant
  },
  controllerAs: "vm",
  template: require("./myhtmlfile.html"),
  controller: MyModalController,
  clickOutsideToClose: true,
}

模式可以正常工作,我可以打开它,等等,但是不能从外部绑定任何东西,我想在模式打开时传递数据。

console.log(this.variableiwant);未定义

预先感谢

0 个答案:

没有答案