2013-12-05 2 views
0

мой английский не очень хорошо, извиняюсь советдобавить наблюдателя на функцию ember.js

я работаю ничуть ember.js и я хотел бы, что функция переменного тока запуска, когда компоненты/график пирог визуализации. я знаю, что мне нужно поставить наблюдателя, и я прочитал документацию, но я не понимаю, где и как поставить наблюдателя.

это код

index.html

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>COMPONENT</title> 
    <script src="js/libs/jquery-1.10.2.js"></script> 
    <script src="js/libs/handlebars-1.1.2.js"></script> 
    <script src="js/libs/ember-1.2.0.js"></script> 
    <script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script> 
    <script src="js/app.js"></script> 
    <link rel="stylesheet" href="css/normalize.css"> 
    <link rel="stylesheet" href="css/style.css"> 
</head> 
<body> 

<script type="text/x-handlebars"> 
    <div>prova<div> 
    <button> {{#link-to "graphs"}}graph{{/link-to}}</button> 
    {{outlet}} 
</script> 

<script type="text/x-handlebars" data-template-name="graphs"> 
    {{graph-pie}} 
</script> 

<script type ="text/x-handlebars" id="graphs" data-template-name="components/graph-pie"> 
    <div id="BC"> 
    <div id="Gphic"> 
    </div> 
    </div> 
</script> 
</body> 
</html> 

app.js

App = Ember.Application.create(); 

App.Router.map (function(){ 
    this.route("graphs"); 
}); 

App.GraphsRoute = Ember.Route.extend ({ 
    model: function() { 
    return data; 
    } 
}); 

App.GraphPieComponent = Ember.Component.extend({ 
    actions: { 
    ac: function() { 
     //do something 
    } 
    } 
}) 

App.GraphsController = Ember.ArrayController.extend({ 

}); 



var data= ... 
+0

Из вашего описания, похоже, что вы хотите что-то делать только один раз, но когда компонент, который он сам визуализируется, является правильным? – MartinElvar

+0

да, есть. функция создает график на основе некоторых «фиксированных» данных – Mitro

ответ

0

Вы хотите использовать событие didInsertElement на компоненте, что-то вроде этого.

App.GraphPieComponent = Ember.Component.extend({ 
    didInsertElement: function() { 
    this._ac(); 
    }, 
    _ac: function() { 
    //do something 
    }, 
    actions: { 
    ac: function() { 
     this._ac(); 
    } 
    } 
}); 
Смежные вопросы