0

所以我目前正在开发一个 JS 库,该库目前正在执行一系列操作并使用其他框架来生成一系列图表......我的问题是我应该使用像骨干网.js 或 ember.js 这样的框架来利用和制作我的应用程序更好的?我想知道我是否应该利用某种框架来编写我的应用程序?我一直把它当作一个插件/类。我应该在哪里画线?

申请流程:

  1. 获取它需要使用标题等构建的所有图形的数据集......这可以是 100 多个图形基于数据集构建 HTML 标记。
  2. 在 DOM Ready 上,为标记中添加的每个图形 div 调用我的图形库...它将执行一系列操作来构建图形,例如 AJAX 调用以获取数据/准备数据/通过第 3 方加载图形框架。
  3. 用户可以通过单击这些图表并将焦点设置到主要内容来与这些图表进行交互。
  4. 他们有选项的窗口和图表上的更详细信息。

目前我正在这样写。

var App = App || {};    
App.Graph = function(options){
       var _default = {version:null};
       var _options = extend(options,_default);
       var __int = function(){
            // do work....
       };
       var __getData = function(){
            // do work...
       };
       var __genChart = function(){ 
           // do work...
       };
       var __load = function(loadBig,callback){
           // do work....
       };
       this.load = function(big,callback){
           // do work....
       };
       __init();
    };

比。像......我知道我可能没有做对。

App.Graph = Ember.Object.extend({
  init: function(thing){
      // do work...
  },
  load: function(thing) {
     // do work...
     var __int = function(){
        // do work....
     };
     var __getData = function(){
        // do work...
     };
     var __genChart = function(){ 
       // do work...
     };
     var __load = function(loadBig,callback){
       // do work....
     };
     return __load(loadBig,callback);
  }
});

比。也许是一个组合,所以我可以重用图形框架......

  var Graph = function(options){
       var _default = {version:null};
       var _options = extend(options,_default);
       var __int = function(){
            // do work....
       };
       var __getData = function(){
            // do work...
       };
       var __genChart = function(){ 
           // do work...
       };
       var __load = function(loadBig,callback){
           // do work....
       };
       this.load = function(big,callback){
           // do work....
           return __genChart();
       };
       __init();
    }; 
   var App = Ember.Object.extend({
      graph: null,
      init: function(thing){
          // do work...
          this.graph = new Graph();
      },
      load: function(thing) {
         // do work...
         return this.graph.load(big,callback);
      }
    });

提前致谢!

4

0 回答 0