mirror of
https://github.com/docker/docs.git
synced 2026-04-12 14:25:46 +07:00
Lock scroll to bottom for logs
This commit is contained in:
@@ -29,10 +29,6 @@ var options = {
|
||||
|
||||
gulp.task('js', function () {
|
||||
return gulp.src('src/**/*.js')
|
||||
.pipe(plumber(function(error) {
|
||||
gutil.log(gutil.colors.red('Error (' + error.plugin + '): ' + error.message));
|
||||
this.emit('end');
|
||||
}))
|
||||
.pipe(gulpif(options.dev || options.test, sourcemaps.init()))
|
||||
.pipe(react())
|
||||
.pipe(babel({blacklist: ['regenerator']}))
|
||||
|
||||
@@ -3,6 +3,8 @@ var React = require('react/addons');
|
||||
var LogStore = require('./LogStore');
|
||||
var Router = require('react-router');
|
||||
|
||||
var _oldScrollTop = 0;
|
||||
|
||||
var ContainerHomeLogs = React.createClass({
|
||||
mixins: [Router.State, Router.Navigation],
|
||||
getInitialState: function () {
|
||||
@@ -22,14 +24,11 @@ var ContainerHomeLogs = React.createClass({
|
||||
},
|
||||
componentDidUpdate: function () {
|
||||
// Scroll logs to bottom
|
||||
var parent = $('.mini-logs');
|
||||
if (parent.length) {
|
||||
if (parent.scrollTop() >= this._oldHeight) {
|
||||
parent.stop();
|
||||
parent.scrollTop(parent[0].scrollHeight - parent.height());
|
||||
}
|
||||
this._oldHeight = parent[0].scrollHeight - parent.height();
|
||||
var parent = $('.mini-logs > .widget');
|
||||
if (parent.scrollTop() >= _oldScrollTop) {
|
||||
parent.scrollTop(parent[0].scrollHeight - parent.height());
|
||||
}
|
||||
_oldScrollTop = parent.scrollTop();
|
||||
},
|
||||
init: function () {
|
||||
this.updateLogs();
|
||||
|
||||
@@ -3,6 +3,8 @@ var React = require('react/addons');
|
||||
var LogStore = require('./LogStore');
|
||||
var Router = require('react-router');
|
||||
|
||||
var _oldScrollTop = 0;
|
||||
|
||||
var ContainerLogs = React.createClass({
|
||||
mixins: [Router.State],
|
||||
getInitialState: function () {
|
||||
@@ -23,13 +25,10 @@ var ContainerLogs = React.createClass({
|
||||
componentDidUpdate: function () {
|
||||
// Scroll logs to bottom
|
||||
var parent = $('.details-logs');
|
||||
if (parent.length) {
|
||||
if (parent.scrollTop() >= this._oldHeight) {
|
||||
parent.stop();
|
||||
parent.scrollTop(parent[0].scrollHeight - parent.height());
|
||||
}
|
||||
this._oldHeight = parent[0].scrollHeight - parent.height();
|
||||
if (parent.scrollTop() >= _oldScrollTop) {
|
||||
parent.scrollTop(parent[0].scrollHeight - parent.height());
|
||||
}
|
||||
_oldScrollTop = parent.scrollTop();
|
||||
},
|
||||
init: function () {
|
||||
this.updateLogs();
|
||||
|
||||
@@ -14,7 +14,7 @@ var NewContainer = React.createClass({
|
||||
getInitialState: function () {
|
||||
return {
|
||||
query: '',
|
||||
results: [],
|
||||
results: _recommended,
|
||||
loading: false,
|
||||
tags: {}
|
||||
};
|
||||
@@ -76,12 +76,10 @@ var NewContainer = React.createClass({
|
||||
});
|
||||
}).then(results => {
|
||||
_recommended = results.filter(r => !!r);
|
||||
if (!this.state.query.length) {
|
||||
if (this.isMounted()) {
|
||||
this.setState({
|
||||
results: _recommended
|
||||
});
|
||||
}
|
||||
if (!this.state.query.length && this.isMounted()) {
|
||||
this.setState({
|
||||
results: _recommended
|
||||
});
|
||||
}
|
||||
}).catch(err => {
|
||||
console.log(err);
|
||||
|
||||
Reference in New Issue
Block a user