Alternative makeBoundHelper in Ember 2.0

I injected Google DFP ads into my blog posts using the linked helper. Since all Handlebars APIs have been removed in Ember 2.0 , what can I use instead of Ember 2.0?

import Ember from "ember"; export default Ember.Handlebars.makeBoundHelper(function(value, options) { var parsedHtml = Ember.$('<div />').html(value) // Push the ads after the divs have been rendered Ember.run.schedule('afterRender', function() { googletag.cmd.push(function() { googletag.display('div-gpt-ad-111111111-0'); }); }) } return parsedHtml.html() }); 
+5
source share
1 answer

You used the syntax Ember.Helper.helper :

 import Ember from 'ember'; const { Helper: { helper }, run: { schedule }, $ } = Ember; export function helperName(params, hash) { let parsedHtml = $('<div />').html(params[0]) // Push the ads after the divs have been rendered schedule('afterRender', function() { googletag.cmd.push(function() { googletag.display('div-gpt-ad-111111111-0'); }); }) } return parsedHtml.html(); } export default helper(helperName); 

Params is an array of all the values ​​that you pass to the helper in your template, for example {{my-helper val1 val2 val3}} params[0] is val1 , etc., a hash is an object containing all the properties that you set in the {{my-helper val1 val2 property1=myPropValue}} , and you will access it through hash.property1 .

+7
source

All Articles