如果我做了
res.sendfile('public/index1.html');
Run Code Online (Sandbox Code Playgroud)
然后我得到一个服务器控制台警告
不推荐使用
res.sendfile:res.sendFile改为使用
但它在客户端工作正常.
但是当我改变它
res.sendFile('public/index1.html');
Run Code Online (Sandbox Code Playgroud)
我收到一个错误
TypeError:path必须是绝对路径或指定root到
res.sendFile
并且index1.html没有呈现.
我无法弄清楚绝对路径是什么.我的public目录与...相同server.js.我做了res.sendFile从server.js.我也宣布了app.use(express.static(path.join(__dirname, 'public')));
添加我的目录结构:
/Users/sj/test/
....app/
........models/
....public/
........index1.html
Run Code Online (Sandbox Code Playgroud)
这里指定的绝对路径是什么?
我正在使用Express 4.x.
为什么replace=true还是replace=false没有在下面的代码产生任何影响?
当replace = false时,为什么不显示"某些现有内容"?
或者更谦虚地说,你能否解释一下replace=true/false指令中的功能是什么以及如何使用它?
例
JS /角:
<script>
angular.module('scopes', [])
.controller('Ctrl', function($scope) {
$scope.title = "hello";
})
.directive('myDir', function() {
return {
restrict: 'E',
replace: true,
template: '<div>{{title}}</div>'
};
});
</script>
Run Code Online (Sandbox Code Playgroud)
HTML:
<div ng-controller="Ctrl">
<my-dir><h3>some existing content</h3></my-dir>
</div>
Run Code Online (Sandbox Code Playgroud)
在Plunker中看到它:
我无法弄清楚为什么多次断开/连接socket.io连接不起作用?
服务器端代码:
io.on('connection', function(socket){
console.log('a user connected');
socket.on('disconnect', function(){
console.log('user disconnected');
});
});
Run Code Online (Sandbox Code Playgroud)
客户端代码:
var socket = io();
socket.on('connect', function() {
console.log("connected from the client side");
});
$('#connect_button').click(function(){
socket.connect();
});
$('#disconnect_button').click(function(){
socket.disconnect();
});
Run Code Online (Sandbox Code Playgroud)
它断开连接.但不重新连接.我正在使用Socket.io 1.0.请帮忙.
我写了一个简单的例子,我使用$ compile动态创建一个元素.这个新元素有另一个按钮,我想要删除这个元素(我已经读过,破坏范围/元素以避免泄漏是很好的).但函数closeThisElement()不起作用; 请帮忙.
请参阅此处的plunker:http://plnkr.co/edit/js7mpUMndjZEdMvRMuZk?p = preview
同时复制以下部分代码:
link: function($scope, $element) {
function closeThisElement(){
$element.remove();
}
function addComment(){
$element.append($compile('<div class="publishComment"><input type="text" ng-model="contentForReply"/><button ng-click="publishReply(contentForReply); closeThisElement()">Publish Reply</button></div>')($scope));
}
$scope.addComment = addComment;
}
Run Code Online (Sandbox Code Playgroud) angularjs angularjs-directive angularjs-scope angularjs-ng-repeat
这很奇怪.
这有效:
border-right: 1px solid rgba(0,0,0,0.12);
/* renders a gray border */
Run Code Online (Sandbox Code Playgroud)
但是当我将它与背景颜色一起使用时,边框现在是一条坚实的黑色线条.
background-color: #333;
border-right: 1px solid rgba(0,0,0,0.12);
/* renders a black border */
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
我有这些文件的公开目录index.html,并index-08.html在里面.
使用下面的代码,我希望index-08.html能够提供服务.但相反,请index.html使用浏览器请求localhost:3000
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', function(req, res) {
res.sendFile('public/index-08.html');
});
Run Code Online (Sandbox Code Playgroud)
但是,如果我将文件名更改index.html为其他内容,比如说not-index.html,则会提供正确的文件index-08.html.
你能帮我理解为什么会这样吗?
mysql 节点文档给出了如何转义和做简洁事情的示例。我无法弄清楚如何使用这种方法插入当前时间。
var post = {id: 1, createdDate: 'NOW()'};
var query = connection.query('INSERT INTO posts SET ?', post, function(err, result) {
});
// Error: ER_TRUNCATED_WRONG_VALUE: Incorrect datetime value: 'NOW()' for column 'createdDate' at row 1
Run Code Online (Sandbox Code Playgroud) 我有以下(简化的)表格
users
+----+-------+
| id | name |
+----+-------+
| 1 | alpha |
| 3 | gamma |
| 5 | five |
| 7 | seven |
| 9 | nine |
+----+-------+
user_relationships
+--------------+----------------+----------------------+
| from_user_id | target_user_id | relationship_type_id |
+--------------+----------------+----------------------+
| 1 | 3 | 1 |
| 1 | 5 | -1 |
| 1 | 7 | 1 |
| 1 | 9 | 1 |
| 7 | 1 | 1 | …Run Code Online (Sandbox Code Playgroud) 我尝试在容器内显示一个简单的图像border-radius: 5px;。但角落处似乎有一个细边框的轮廓(您需要仔细查看下图)。如何避免这些角边框?
.cover {
margin: 1em;
padding: 1em;
}
.image-wrapper {
height: 15em;
width: 15em;
overflow: hidden;
background-color: black;
border-radius: 15px;
}
img {
height: 100%;
width: auto;
}Run Code Online (Sandbox Code Playgroud)
<div class="cover">
<div class="image-wrapper">
<img
src="https://images.pexels.com/photos/316466/pexels-photo-316466.jpeg"
/>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
是的,如果我删除它就会消失background-color: black;。但我需要保留background-color,我还需要img { height: 100%; width: auto; }保持纵横比,并处理图像尺寸太薄或太宽等情况。
搜索其他类似问题时,我只能找到针对 Safari 的问题/回复。我正在使用 Brave 浏览器。
当我使用socket.io执行pub/sub时,下面的代码工作得很好.
基本上,我从浏览器发送聊天消息.在服务器上,我收听此消息并将其发回给所有来自服务器的相同消息.所以,我希望每发送一条消息都会返回/打印1条消息.
通过以下内容,我可以从多个浏览器登录,当我发送聊天消息时,它会按预期返回/打印为单个聊天消息.
io.use(socketHandshake({store: sessionStore, key:'jsessionid', secret:'secret', parser:cookieParser()}));
io.on('connection', function (socket) {
socket.on('chat', function (message) {
io.emit('chat', "hello world");
});
});
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试使用redis做pub/sub时,会出现问题.
从第一个浏览器:1个聊天消息导致打印出1个聊天消息
从第二个浏览器:1个聊天消息导致打印出2个聊天消息
从第三个浏览器:1个聊天消息导致打印出3个聊天消息
var sub = redis.createClient();
var pub = redis.createClient();
sub.subscribe('chat');
io.use(socketHandshake({store: sessionStore, key:'jsessionid', secret:'secret', parser:cookieParser()}));
io.on('connection', function (socket) {
socket.on('chat', function (message) {
// io.emit('chat', "hello world");
pub.publish('chat', "hello world");
});
sub.on('message', function (channel, message) {
io.emit(channel, message);
});
});
Run Code Online (Sandbox Code Playgroud)
我错过了什么?我是初学者,我正在尝试这个例子http://blog.cloudfoundry.org/2013/01/24/scaling-real-time-apps-on-cloud-foundry-using-node-js-and -redis /使用最新版本的express,socket.io,socket.io-handshake和redis.
我对这个redis pub/sub感到难过.请帮忙.
node.js ×5
angularjs ×2
css ×2
express ×2
html ×2
mysql ×2
socket.io ×2
border ×1
javascript ×1
node-mysql ×1
node-redis ×1
path ×1
redis ×1
routing ×1
sql ×1