第二个模式实验室 package.json
Pattern Lab with second package.json
我有一个模式实验室 edition-node-gulp 设置并且想使用 NPM 来管理 UI 依赖项,例如 jQuery、D3 和其他。 Pattern Lab 的设置使开发在 'Source' 文件夹中进行,该文件夹已编译并移至 'Public' 文件夹。 Public 文件夹的根在服务时成为应用程序的根。
目前,我手动添加 jQuery 等资产。我认为在用于 运行 所有 Pattern Lab Node 的 package.json 文件中管理像 jQuery 这样的依赖关系会很好,但是 node_modules 文件夹存在于 Public,所以我不能在实时应用程序中引用它。
到目前为止,我似乎有两个选择:
- 按原样继续,忘记这些资产的包管理。
- 在Public里面和jQuery等人一起创建第二个package.json,这看起来很马虎。
创造第二个 package.json 这么糟糕吗?
我是不是没有考虑其他选择?
创造第二个 package.json 并没有那么糟糕(当然,当您知道自己在做什么以及如何做时)。但是,在您的特定情况下,这不是最佳方案,因为有更好的选择。
问题是什么?将资产添加到构建输出。那么,您可以做什么:
- 通过
npm install
安装资产并保存在原始package.json
- 适应
gulpfile.js
复制输出目录中的文件。
如果第二步太麻烦/有问题,也可以用简单的 package.json scripts
更改替换(添加 build
脚本):
"scripts": {
"gulp": "gulp -- ",
"build": "npm run gulp && cp -R node_modules/jquery/dist/blablabla.js mypublicdir/blablabla.js"
},
然后 运行 为 npm run build
。如果你需要支持 Windows 你可以使用 https://www.npmjs.com/package/cp-cli 而不是 cp
.
我有一个模式实验室 edition-node-gulp 设置并且想使用 NPM 来管理 UI 依赖项,例如 jQuery、D3 和其他。 Pattern Lab 的设置使开发在 'Source' 文件夹中进行,该文件夹已编译并移至 'Public' 文件夹。 Public 文件夹的根在服务时成为应用程序的根。
目前,我手动添加 jQuery 等资产。我认为在用于 运行 所有 Pattern Lab Node 的 package.json 文件中管理像 jQuery 这样的依赖关系会很好,但是 node_modules 文件夹存在于 Public,所以我不能在实时应用程序中引用它。
到目前为止,我似乎有两个选择:
- 按原样继续,忘记这些资产的包管理。
- 在Public里面和jQuery等人一起创建第二个package.json,这看起来很马虎。
创造第二个 package.json 这么糟糕吗? 我是不是没有考虑其他选择?
创造第二个 package.json 并没有那么糟糕(当然,当您知道自己在做什么以及如何做时)。但是,在您的特定情况下,这不是最佳方案,因为有更好的选择。
问题是什么?将资产添加到构建输出。那么,您可以做什么:
- 通过
npm install
安装资产并保存在原始package.json - 适应
gulpfile.js
复制输出目录中的文件。
如果第二步太麻烦/有问题,也可以用简单的 package.json scripts
更改替换(添加 build
脚本):
"scripts": {
"gulp": "gulp -- ",
"build": "npm run gulp && cp -R node_modules/jquery/dist/blablabla.js mypublicdir/blablabla.js"
},
然后 运行 为 npm run build
。如果你需要支持 Windows 你可以使用 https://www.npmjs.com/package/cp-cli 而不是 cp
.