问题标签 [watchify]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Watchify 不查看父文件夹中的更改
我在一个文件夹下有一堆具有共同依赖关系的应用程序。
现在,Watchify 的几个实例正在为所有这些运行,如果我更改其中任何一个,该应用程序将使用 browserify 和 reactify 重建。这里的想法是让所有应用程序只获取它们自己的编译文件,而不是一个包含所有应用程序的巨大 javascript 文件。目前很好!
现在每个应用程序的入口点main.js都是这样开始的
如果我在应用程序特定的something.js中进行更改,该应用程序将被重建并且一切都按预期工作。但是,如果我更新tools.js中的某些内容,它有几个依赖于它的应用程序,那不会发生。从理论上讲,这应该会触发所有应用程序的重建,因为它们都需要它,但情况似乎并非如此。
如果我在 tools.js 中更改某些内容,我必须转到每个应用程序并在其中重新保存一些文件,以便重新构建并获取我所做的更改。
Watchify 是否只查看子文件夹而不查看父文件夹,或者这里是否还有其他事情发生?
node.js - 节点脚本:使用 watchify 链接命令
我正在使用 npm 脚本(请参阅下面的 npm 文件)来监视文件的更改,watchify
然后编译并在编译后通知。然而,发生的情况是 watchify 任务运行(第一次运行时需要 40 秒),然后notify:js
立即调用该任务。我希望notify:js
在 watchify 完成编译后调用。
我尝试了以下命令变体。
上述命令与操作符的作用相同|
。
上述命令与操作符的作用相同&
。
对于我想要实现的目标,我在watchify 文档中看不到任何选项。我在这里遗漏了什么,或者我试图这样做的方式是不可能的?
gulp - Gulp watch 只用 watchify 触发一次
我遇到了 watchify 和 gulp.watch 之间一些奇怪的相互作用的问题。当我们将 watchify 与轮询一起使用时,我需要这样做,因为它在 vagrant 环境中运行,然后 gulp.watch 任务仅在文件第一次更改时触发。
吞咽文件:
此处的示例存储库:https ://github.com/mudetroit/watchify-gulp-watch-issue
当您在初始编译后运行 gulp 并更改文件两次时,您会看到以下内容。
有几点值得注意,如果我不使用 watchify 并进行完全重新编译,它工作得很好,但这在实践中会很慢。如果我取消投票,它可以正常工作,但这会阻止它在 NFS 的流浪环境中工作。整个早上都在试图了解这里发生了什么,但没有到达任何地方,所以希望我能得到一些帮助。
sass - PhpStorm:使用 watchify.js 将所有 .SCSS 文件压缩为单个 .CSS 文件?
我正在使用以下 npm 构建工具的组合开发浏览器应用程序
- 浏览器化
- 咖啡化
- 关注
我的 package.json 文件的脚本部分是:
到目前为止,我已经配置了我的项目,以便在开始工作之前,我输入“npm run watch”命令,并且每当我更新一个时,所有 CoffeeScript 文件都会自动捆绑到 bundle.js 文件中。现在,我还想要几个 .SCSS 文件,这些文件会自动编译成 .CSS 文件,然后全部打包并压缩成一个 min.css 文件。而且,理想情况下,我希望无需输入除我已经为我的 CS 文件输入的命令(“npm run watch”)之外的命令来完成此操作。
这是我的 package.json devDependencies:
到目前为止,我已经使用 PhpStorm 的文件观察器和 node-sass npm 模块成功地将我的 .SCSS 文件编译为 .CSS 文件。经过一番阅读,我决定使用 yui 压缩器(它也作为 Node 模块安装,如上所示)。但是,经过大量搜索,我找不到有关如何执行此操作的良好描述。
我应该更新:
我的 package.json 文件中的行?如果是这样,怎么做?
我希望最终结果是,只要 SCSS 文件夹中的文件发生更改,其他文件夹中的 min.css 文件就会自动重新编译。
(如果我的目的有更好的选择,我不一定坚持使用 yui 压缩器。)
javascript - GULP - 在一个流中合并多个 browserify 包
我正在开发一个大型 Web 应用程序。我正在使用 Gulp 构建 javascript 文件和 Browserify。
问题是当我处于开发模式时,每次我进行更改时都需要花费大量时间来重建我的 javascript 包(使用手表)
对于我的应用程序,我需要以特殊顺序将所有 javascript 文件打包到一个文件中:
- 所有供应商文件(包括引导 jquery 等)
- 一些需要浏览器化的文件(使用 commonJS 样式
require('...');
) - 一些需要浏览器化和 babelified 的文件(
.jsx
文件)
由于我不想在文件保存之间浪费时间等待 browserify 捆绑所有文件(平均 20-25 秒......),我决定将流程拆分为 3 个异步构建的捆绑包,然后合并所有这 3 个临时捆绑包到一个。(通过这种方式,第一次构建只需要 15 秒,如果我使用 watchify 在文件中进行了一次更改,重建只需 2 秒而不是 20 秒)。
我的问题是,当我只使用一个管道来捆绑最终文件时,使用 browserify 和debug: true
选项,我可以在 chrome 开发者控制台中单独访问所有源文件,这要归功于 browserify 调试选项,因为只有一个 sourcemap 文件生成.
但是现在有了 3 个管道,每个管道都构建了自己的源映射,当我将 3 个临时包合并到最后一个中时,使用gulp-sourcemaps
插件和loadMaps: true
选项,Web 浏览器控制台上出现错误(因此该应用程序不起作用)。如果我关闭debug: true
browserify 选项,它可以正常工作,但我无法单独调试每个 JS 文件。我只有大的 100K 行最终文件...
有人可以帮我获得正确的源图吗?
这是抛出的错误类型
由于这个错误,我无法合并所有 browserify 包生成的源图。
javascript - Gulp browserify babel 和 watchify 输出多个bundle
我想使用 gulp、browserfiy 输出多个包,并且还使用 babel 和 watchify 的功能。我可以生成多个包,但我不知道使用 babel 和 watchify 的功能。
这是我为多个捆绑所做的
我应该怎么做才能享受 watchify 和 babel 的功能?
javascript - watchify(npm 包)中的“-d”选项是什么意思?
这是包的链接:https ://www.npmjs.com/package/watchify 我在某处看到了一个用法:“watchify -o js/bundle.js -v -d js/app.js”。我希望知道“-d”选项的含义。谢谢你。
docker - Docker - 在容器内运行 watchify 不起作用
我是 docker 新手,正在尝试构建我的开发容器。我想在开发时为 concat 文件运行watchify ( https://www.npmjs.com/package/watchify )。
Docker 可以管理卷。我可以watchify在我的系统上运行,但我想把它放在 docker host 上。
我设法构建容器和图像。
当使用“npm run start:dev”运行容器时,它就会退出。
知道为什么会这样吗?我可以在容器上运行 watchjs 和节点应用程序吗?
这就是我构建图像/容器的方式:
这里是我的 Dockerfile
javascript - watchify 和 gulp.watch 的区别
我刚刚开始使用Browserify
withgulp
并且遇到了使用watchify
.
我不明白的是,为什么不使用gulp.watch
呢?和 和
有什么不一样?watchify
gulp.watch
javascript - 如何设置 gulp 将多个文件捆绑为一个?
这似乎是一个非常简单的问题,但花了最后 3 个小时研究它,发现如果不使用 watchify,每次保存新文件都会很慢。
这是我的目录树:
要求。在文件夹中每次创建或保存文件时,toBundleTheseJs/
我希望将此文件重新捆绑到toBundleJsHere/
我需要在我的package.json
文件中包含什么?
我需要写入我的 gulp 文件的最低要求是多少?
这应该尽可能快,所以认为我应该使用 browserify 和 watchify。我想了解最少的步骤,所以在这一点上使用像 jspm 这样的包管理器是多余的。
谢谢