私はJaxerで遊んでいますが、コンセプトは非常にクールですが、クライアントとサーバーの両方で使用できるオブジェクトを定義する方法がわかりません。私が見つけることができる例は、オブジェクトをまったく定義していません。
オブジェクトを定義し、サーバーで使用できるメソッド、クライアントで使用できるメソッド、およびクライアントで使用できるがサーバーで実行されるメソッド (サーバープロキシ) を指定できるようにしたいと考えています。これは、異なる属性<script
を持つ 3 つの個別の > タグを 使用せずに実行できますか? runat
可能であれば、同じ js ファイルですべてのメソッドを定義できるようにしたいのですが、3 つの個別のタグを使用して html でオブジェクトをインラインで定義するのは現実的ではありません...
基本的に、これを 1 つの js ファイルで実行できるようにしたいと考えています。
function Person(name) {
this.name = name || 'default';
}
Person.runat = 'both';
Person.clientStaticMethod = function () {
log('client static method');
}
Person.clientStaticMethod.runat = 'client';
Person.serverStaticMethod = function() {
log('server static method');
}
Person.serverStaticMethod.runat = 'server';
Person.proxyStaticMethod = function() {
log('proxy static method');
}
Person.proxyStaticMethod.runat = 'server-proxy';
Person.prototype.clientMethod = function() {
log('client method');
};
Person.prototype.clientMethod.runat = 'client';
Person.prototype.serverMethod = function() {
log('server method');
};
Person.prototype.serverMethod.runat = 'server';
Person.prototype.proxyMethod = function() {
log('proxy method');
}
Person.prototype.proxyMethod.runat = 'server-proxy';
また、それができたと仮定すると、どうすればそれを html ページに正しく含めることができますか?