gulp - 使用 signalr 包构建项目时找不到模块
问题描述
我正在尝试在我的反应应用程序中使用 signalR。当我像这样导入它时:
import { HubConnection } from '@aspnet/signalr-client';
没有uglify,构建运行良好。但是当我使用 uglify() 时,由于 uglify 和 es6 不兼容而失败。我找到了解决方法:
import { HubConnection } from '@aspnet/signalr-client/dist/browser/signalr-clientES5-1.0.0-alpha2-final.js';
但是现在当我尝试构建项目时,我遇到了这样的错误:
Cannot find module './HttpClient' from '...\node_modules\@aspnet\signalr-client\dist\browser'
这些模块位于
'...\node_modules\@aspnet\signalr-client\dist\src\...'
那么,在这种情况下如何修复构建?
构建任务本身:
gulp.task('build', () => {
return browserify({
entries: './wwwroot/js/client/app.jsx',
extensions: ['.jsx'],
debug: true
})
.transform('babelify', {
presets: ['es2015', 'react'],
plugins: ['transform-class-properties']
})
.bundle()
.on('error', function (err) {
gutil.log(gutil.colors.red.bold('[browserify error]'));
gutil.log(err.message);
this.emit('end');
})
.pipe(source('app.bundle.js'))
.pipe(streamify(uglify().on('error', function(e){
console.log(e);
})))
.pipe(sourcemaps.write('./maps'))
.pipe(gulp.dest('wwwroot/dist/client'));
});
提前致谢!
解决方案
使用https://www.npmjs.com/package/@aspnet/signalr。您正在使用已弃用且不受支持的软件包。
推荐阅读
- ios - 在 Swift 的 ScrollView 中设置子 ViewController 的高度
- php - 根据国家/地区设置不同的价格并做出响应
- python - 如何在 selenium Python 中的搜索单击复选框后查找元素
- c# - C# 通过在其父项上操作而不进行类型检查来填充 ObjectB 字段
- python - 如何为 argparse 参数提供类型提示?
- react-native - React Native 传感器测压计指南针在一定程度的旋转后重置
- flutter - Flutter 小部件测试,是屏幕文件上的小部件还是单个小部件文件?
- python - 如何在 Python 中将结果存储在元组中
- java - REST API 和 REST 服务有什么区别?
- flutter - 我们如何从 openCart 获得免费的 Flutter 演示应用程序?