更改JS文件的语法,以便可以将`required()`更改为另一个使用webpack

时间:2017-08-09 07:38:52

标签: javascript webpack ecmascript-6

我第一次在Laravel 5.4上使用webpack并开始学习。

我有teal.js来自此3d dice example"use strict"; window.teal = {}; window.$t = window.teal; teal.copyto = function(obj, res) { if (obj == null || typeof obj !== 'object') return obj; if (obj instanceof Array) { for (var i = obj.length - 1; i >= 0; --i) res[i] = $t.copy(obj[i]); } else { for (var i in obj) { if (obj.hasOwnProperty(i)) res[i] = $t.copy(obj[i]); } } return res; }; teal.copy = function(obj) { if (!obj) return obj; return teal.copyto(obj, new obj.constructor()); }; teal.element = function(name, props, place) { var dom = document.createElement(name); if (props) for (var i in props) dom.setAttribute(i, props[i]); if (place) place.appendChild(dom); return dom; }; .... MANY MORE 文件。

js bootstrap

我希望能够将其添加到我的window.teal = require(./dice/teal); 文件中。

webpack

这不起作用。第一次gulp来自webpack文件刚刚连接在一起,我正在学习范围和teal.js

语法方面缺少什么,所以我需要js bootstrap

window.teal = require('./dice/teal'); <-- problem window.CANNON = require('./dice/cannon.min'); <-- ok window.THREE = require('./dice/three.min'); <-- ok window.dice = require('./dice/dice'); <-- ok 代码为:

await

1 个答案:

答案 0 :(得分:0)

如果你只是想让它工作,如果没有重构,你可以试试这样的脏东西:

"use strict"以下删除:

window.teal = {};
window.$t = window.teal;

并添加:

let teal = {}

最后,在文件末尾添加:

module.exports = window.teal

这是我能想到的最快的解决方案。 这样您就可以根据环境消除不存在的窗口对象,并将分配给teal对象的所有函数公开给模块导出。

也许我错过了关于你文件结构的一些信息,告诉我它是否无效。