一种方法是检查元素上是否有.shadowRoot属性,但是我需要在呈现页面之前返回一个布尔值.
在Meteor中,如何从客户端调用方法(传递name),让服务器执行一些shell命令?
方法函数基本上是:创建一个目录,然后用给定的克隆git repo name.
这是非常简单的东西,但Meteor不会这样做.我已经圈了好几个小时了.一切都在普通的bash或节点中工作.在那一刻:
创建目录 - >服务器重启 - > meteor抛出错误声明目录已存在 - > meteor删除目录 - >服务器重启
var cmd, exec, fs;
if (Meteor.isClient) {
Template.app.events({
'click button': function() {
Meteor.call('clone', "NAMEHERE", function(error, result) {
if (error) {
console.log(error);
} else {
console.log(result);
}
});
}
});
}
if (Meteor.isServer) {
fs = Npm.require('fs');
exec = Npm.require('child_process').exec;
cmd = Meteor.wrapAsync(exec);
Meteor.methods({
'clone': function(name) {
var dir;
dir = process.env.PWD + "/projects/" + name;
cmd("mkdir " …Run Code Online (Sandbox Code Playgroud) 我正在使用git来管理一些自定义包.如果包不在第一个repo中,我想运行另一个尝试其他源的命令.我不需要告诉用户这种情况正在发生.用户不需要知道git存在.
if ! git clone git@gitlab.com:username/repo directory -q
then
#do something else
fi
Run Code Online (Sandbox Code Playgroud)
即使使用,git仍会在控制台中输出致命错误-q.
那么,我该如何沉默小git?