ファイルがあります。基本的には、アプリHelper.js
で使用されるグローバル プロパティのリストを持つオブジェクトです。Backbone
body
アプリ内で使用する前に、これらのプロパティのいくつかを設定する必要がありますBackbone
。これを試しましたが、機能しません。
<script type="text/javascript">
require(["app/helper"], function (Helper) {
console.log('default Helper.webroot = ' + Helper.webroot);
Helper.webroot = "<?php echo $this->webroot;?>";
console.log('require Helper.webroot = ' + Helper.webroot);
});
</script>
console:
default Helper.webroot = /
require Helper.webroot = /site.com/subfolder/
次に、この require 内に定義モジュールをロードします。
<script type="text/javascript">
require(["app/models/status_message", "app/views/status_message"], function (StatusMessageModel, StatusMessageView) {
var StatusMessage = new StatusMessageView({
model:new StatusMessageModel({
icon : "<?php echo $icon;?>",
type : "<?php echo $message_type; ?>",
title : "<?php echo __('Informazione'); ?>",
message :"<?php echo __('Nessun messaggio di notifica'); ?>"
})
});
<?php if(!empty($message)) { ?>
StatusMessage.model.set({message:"<?php echo $message; ?>"});
<?php } ?>
});
app/views/status_message
私は Helper.webroot をログに記録しようとしました:
define([
"jquery",
"handlebars",
"lodash",
"helper",
"backbone",
"app/models/status_message",
"text!app/templates/status_message.php"
],
function ($, Handlebars, _, Helper, Backbone, StatusMessageModel, tmplStatusMessage) {
console.log('define Helper.webroot = ' + Helper.webroot);
return Backbone.View.extend({...});
}
);
console:
define Helper.webroot = /
webroot
アプリの前にを設定していないのBackbone
ですが、どうすればできますか?