假设我有一个名为testComp的组件,该组件具有字符串属性testProperty。对应于testComp.java的是一个js文件testComp.js
如何在testComp.js中访问testProp?
我尝试了以下操作,但出现错误。
console.log( ${testProp} );
我知道我可以在tml文件中执行$ {testProp},但是我需要在javascript文件中访问此属性。我已经搜索了邮件列表,但到目前为止还没有运气。知道如何做到吗?
最佳答案
尝试这个:
testComp.java
@Inject
private JavaScriptSupport javaScriptSupport;
@AfterRender
private void after() throws Exception {
JSONObject arguments = new JSONObject();
arguments.put("testProperty", this.testProperty);
javaScriptSupport.addInitializerCall("testComp", arguments);
}
testComp.js
Tapestry.Initializer.testComp = function (json) {
new testComp(json);
};
function testComp(json){
alert(json.testProperty);
}