如何在Ember

时间:2017-01-19 17:45:02

标签: angularjs ember.js angularjs-directive file-manager ember-cli-mirage

我使用angular-filemanager安装了bower install angular-filemanager --save并在ember-cli-build.js中导入了必要的依赖项。

  app.import('bower_components/angular/angular.js');
  app.import('bower_components/angular-translate/angular-translate.min.js');
  app.import('bower_components/jquery/dist/jquery.min.js');
  app.import('bower_components/ng-file-upload/ng-file-upload.min.js');
  app.import('bower_components/bootstrap/dist/js/bootstrap.min.js');
  app.import('bower_components/angular-filemanager/dist/angular-filemanager.min.css');
  app.import('bower_components/angular-filemanager/dist/angular-filemanager.min.js');

然后我创建了一个组件,但我不确定如何使用angular-filemanager指令。

component.js:

didInsertElement: function() {
    let model = this.get('model');
    angular.module('angular-filemanager', []).directive('somedirective', function() {
        return { template: 'test {{ model[0] }} test' };
    }).run(function($rootScope){ $rootScope.model = model; });
    angular.bootstrap(this.element, ['angular-filemanager']);
}

template.hbs:

<div somedirective="model"></div>

我对角度的了解并不多,几个月前我才开始学习使用角色。我能做的就是运行该函数指令。

--- ---编辑

由于我使用了海市蜃楼,因此我只使用路径admin/file创建了方法,这些方法不会对getpost请求返回任何有意义的内容。

我将component.js&#39; s didInsertElement更改为

 didInsertElement: function() {
    angular.module('FileManagerApp').config(['fileManagerConfigProvider', function (config) {
      config.set({
        appName: 'angular-filemanager',

        listUrl: 'api/admin/file',
        uploadUrl: 'api/admin/file',
        renameUrl: 'api/admin/file',
        copyUrl: 'api/admin/file',
        moveUrl: 'api/admin/file',
        removeUrl: 'api/admin/file',
        editUrl: 'api/admin/file',
        getContentUrl: 'api/admin/file',
        createFolderUrl: 'api/admin/file',
        downloadFileUrl: 'api/admin/file',
        downloadMultipleUrl: 'api/admin/file',
        compressUrl: 'api/admin/file',
        extractUrl: 'api/admin/file',
        permissionsUrl: 'api/admin/file',
      });
    }]);

    angular.bootstrap(this.element, ['FileManagerApp']);
});

和template.hbs到

<angular-filemanager></angular-filemanager>

我仍然没有看到屏幕上显示任何内容,但控制台上出现错误:

vendor.js: 144343 TypeError: e.post(...).success is not a function
    at o.list (vendor.js:163007)
    at i.list (vendor.js:163007)
    at i.list (vendor.js:163007)
    at i.refresh (vendor.js:163007)
    at new <anonymous> (vendor.js:163007)
    at Object.invoke (vendor.js:134857)
    at $controllerInit (vendor.js:140710)
    at nodeLinkFn (vendor.js:139587)
    at compositeLinkFn (vendor.js:138896)
    at nodeLinkFn (vendor.js:139650)

0 个答案:

没有答案