2017-11-03 7 views
0

Ember 2.16.x 이상에서 새로운 가져 오기 구문을 사용하여 Ember.Handlebars.Utils.escapeExpression 함수에 액세스하려면 어떻게합니까?Ember 2.16.x : 새로운 가져 오기 구문으로 Ember.Handlebars.Utils.escapeExpression에 액세스

다음 코드 스 니펫은 Writing Helpers section of the Ember docs에서 가져옵니다. (참고로, 나는 아래의 코드를 정리 한 원본과 관련이없는 오류의 몇 가지가 있습니다.)

import { helper } from "@ember/component/helper"; 
import Handlebars from "handlebars"; 
import { htmlSafe } from "@ember/string"; 

export function makeBold(param /*, ...rest*/) { 
    let value = Handlebars.Utils.escapeExpression(param); 
    return htmlSafe(`<b>${value}</b>`); 
} 

export default helper(makeBold); 

나는 위의 코드를 사용하는 경우, 나는 다음과 같은 오류 얻을 :

Could not find module 'handlebars' imported from 'ember-app/helpers/make-bold'

답변

1

지금은 Handlebars.Utils.escapeExpression 함수가 새 모듈 가져 오기 (일명 RFC 176)에 의해 아직 내보내지지 않았습니다.

import Ember from 'ember'; 

Ember.Handlebars.Utils.escapeExpression(...) 

이에 대한 오픈 GitHub의 문제가 https://github.com/ember-cli/ember-rfc176-data/issues/12

당신이 잘못된 것으로 보인다 링크 된 가이드 페이지에 존재하는 우리는 특정 조각을 수정해야합니다 : 당신은 지금은 Ember 수입에서 그것을 계속 사용한다 . 미안합니다!

+0

가이드 PR https://github.com/emberjs/guides/pull/2130에서 제출 – TBieniek

+0

Roger that. 그 솔루션이 여전히 효과가 있었기 때문에 나는 그 솔루션으로 빠졌지 만, 나는 단지 "잘못하고 있지 않다"고 확신하고 싶었다. 감사! –