我正在努力让这个工作:Running LoopBack in the browser
虽然API效果很好,但尝试浏览文件'browser-app.js'的副本会引发错误:
错误:无法从'APP_DIR / node_modules / loopback-boot'找到模块'loopback-boot#instructions'
更新
代码:
的客户机/ JS / app.js
var loopback = require('loopback');
var boot = require('loopback-boot');
var app = module.exports = loopback();
boot(app);
Browserifing :
browserify client/js/app.js -o client/js/bundle.js
Error: Cannot find module 'loopback-boot#instructions' from 'APP_DIR/node_modules/loopback-boot'
at /opt/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:46:17
at process (/opt/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:173:43)
at ondir (/opt/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:188:17)
at load (/opt/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:69:43)
at onex (/opt/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:92:31)
at /opt/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:22:47
at FSReqWrap.oncomplete (fs.js:99:15)
答案 0 :(得分:1)
我建议你看一下这个例子:https://github.com/strongloop-community/loopback-example-isomorphic
gulp任务 build:lb-client 可以实现神奇:
source
使用gulp.task('build:lb-client', ['clean'], function(done) {
var b = browserify({basedir: path.resolve(__dirname, 'client/loopback')});
b.require(path.resolve(__dirname, 'client/loopback/index.js'),
{expose: 'lbclient'});
try {
boot.compileToBrowserify({appRootDir: path.resolve(__dirname,
'client/loopback')}, b);
} catch(e) {
throw e;
}
var target = fs.createWriteStream('client/public/js/bundle.js');
target
.on('error', done)
.on('close', done);
b.bundle().pipe(target);
});
运行它,您将在目录gulp build:lb-client
中找到文件bundle.js
,该文件已准备好包含在网页中。