我正在使用SAGE9开发一个WordPress主题,并试图拆分我的文件以获得更干净的代码。我正在使用webpack在本地捆绑JavaScript。
有一个路由器设置为仅在某些页面上运行JavaScript。但是,当我尝试将文件内容作为常量导入时,它是全局范围的,并在主页上导致问题。下面的示例应该更好地解释:
// formPage.js (the init function is only run on the form page)
import { validateAge } from '../modules/validateAge';
export default {
init() {
// Javascript to be fired on the form page
new validateAge();
},
};
// ../modules/validateAge.js
export const validateAge = Marionette.Object.extend({
...
}如果不将marionette对象设置为全局作用域,我如何重写此代码?这在主页上失败了,因为Marionette依赖项仅加载到表单页面(独立于捆绑包),而不是主页。
发布于 2018-09-15 01:16:15
好的,我修复了这个问题,将其导出为函数而不是常量,从而限定了Marionette调用的作用域。
https://stackoverflow.com/questions/52309121
复制相似问题