繁体   English   中英

使用Browserify / Babel / node.js是否可以要求基于可变字符串的文件

[英]Using Browserify/Babel/node.js can you require a file based on a variable string

根据这个问题,您可能需要在运行时在node.js中基于字符串的路径。

奇怪的是,这似乎在节点服务器端对我来说很好,但是在使用Babel / Browserify的客户端看来却不起作用

对于这个特定的错误,当实际的API失效时,我基本上require测试很多模拟json数据。

  // slug comes into the function and could for example be 'movies'
  let modulePath = '../mock/products/' + slug + '.js'
  let data = require(modulePath)

这给我以下错误

  Failed! Error: Cannot find module '../mock/products/movies.js'

如果我将其更改为let modulePath = '../mock/products/movies.js' ,则检索数据将没有问题...而且正如我所提到的,如果我在此服务器端运行,则没有问题,但是不好当我运行代码客户端时。

我正在使用babel / babelify将ES6代码转换为ES5

使用以下命令与browserify一起构建

browserify --debug -t [babelify] client.js > public/js/bundle.js

我在package.json中的Dev devDependencies如下:

  "devDependencies": {
    "browserify": "^8.0.3",
    "babel": "^4.0.1",
    "babelify": "~6.1.2"
  }

Browserify仅在可以静态分析的情况下才能计算依赖关系。 如果您动态生成导入,则它无法知道要捆绑的模块。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM