
Bohdan
23.10.2017
10:39:19

Bauyrzhan
23.10.2017
10:39:37
то есть не скролилось
а с топа начиналось

Bohdan
23.10.2017
10:40:35
а разве оно скролится с анимацией?

Google

Bohdan
23.10.2017
10:40:46
просто изменится текущая позиция и все
или что тебе нужно то епта

Bauyrzhan
23.10.2017
10:45:35
все помогло спасибо

Maksim
23.10.2017
12:26:53
Можно ли сохранить данные введеные в input средствами angular и при обновлении заполнять инпуты?

Bauyrzhan
23.10.2017
12:27:48

Maksim
23.10.2017
12:28:13

Bauyrzhan
23.10.2017
12:28:18
localStorage

Nikolay
23.10.2017
12:29:05
Хранилище браузера, оч удобная вещь

Bauyrzhan
23.10.2017
12:29:26
кто-нибудь собирал проект на галпе первый ангуляр?
есть бест конфиги?

Bohdan
23.10.2017
12:29:54

Bauyrzhan
23.10.2017
12:30:33
весь проект переписать на вебпак
и заимплементить импорты

Google

Bauyrzhan
23.10.2017
12:30:45
это же пиззда
долго

Bohdan
23.10.2017
12:31:12
Ничего страшного
За то будешь использовать в будущем правильные инструменты для сборки бандла)

Bauyrzhan
23.10.2017
12:31:54
а какой вебпак

Valeriy
23.10.2017
12:31:56
на вебапке феерический гемор с шаблонизаторами. Их лучше через gulp/npm/grunt предварительно собрать и сконвертить

Bauyrzhan
23.10.2017
12:31:56
третий?

Valeriy
23.10.2017
12:32:13
лучше 3

Bauyrzhan
23.10.2017
12:32:15
пиздец третий вебпак собирает первый ангуляр

Bohdan
23.10.2017
12:32:19

Bauyrzhan
23.10.2017
12:32:34
это всеравно что уродливая проститутка в красивой юбке

Valeriy
23.10.2017
12:33:11
у нас pug+less разваливается, там же импортить надо всё на свете

Nikolai
23.10.2017
12:33:47

Bohdan
23.10.2017
12:33:52

Valeriy
23.10.2017
12:34:19
в итоге кучка костылей на less и импорты особо нежных библиотек в index.html отдельно
может знает кто как правильно женить pug+sass или pug+less на вебпаке?


Bohdan
23.10.2017
12:35:05
'use strict';
const webpack = require('webpack');
const loaders = require('./loaders');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const BrowserSyncPlugin = require('browser-sync-webpack-plugin');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const FaviconsWebpackPlugin = require('favicons-webpack-plugin');
const copyConfig = require('./copy-webpack-plugin.config');
const path = require('path');
const config = {
cache: true,
watch: true,
context: path.resolve(__dirname, '../src'),
entry: {
app: ['./ts/bootstrap.ts'],
vendor: ['./ts/vendor.ts']
},
output: {
filename: 'app.bundle.js',
path: path.resolve(__dirname, '../dist'),
chunkFilename: '[id].chunk.js',
},
devtool: 'cheap-module-source-map',
resolve: {
extensions: ['.ts', '.tsx', '.js', '.jsx', '.json', '.css', '.styl', '.pug']
},
node: {
fs: 'empty',
net: 'empty',
tls: 'empty'
},
plugins: [
new HtmlWebpackPlugin({
template: './index.pug',
inject: 'body',
hash: true
}),
new BrowserSyncPlugin({
host: 'localhost',
port: 8080,
server: {
baseDir: 'dist'
},
ui: false,
online: false,
notify: false
}),
new ExtractTextPlugin('[name].styles.css'),
copyConfig,
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
filename: 'vendor.bundle.js'
}),
new FaviconsWebpackPlugin({
logo: './tile.png',
persistentCache: true,
icons: {
android: false,
appleIcon: false,
appleStartup: false,
coast: false,
favicons: true,
firefox: true,
opengraph: false,
twitter: false,
yandex: false,
windows: false
}
})
],
module: {
rules: loaders
}
};
module.exports = config;
const loaders = [{
test: /\.ts(x?)$/,
use: 'awesome-typescript-loader'
}, {
test: /\.json$/,
use: 'json-loader'
}, {
test: /\.css$/,
use: ['style-loader', 'css-loader']
}, {
test: /\.styl$/,
use: ['style-loader', 'css-loader', 'stylus-loader'],
}, {
test: /\.pug$/,
use: ['raw-loader', 'pug-html-loader']
}, {
test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/,
use: 'url-loader?limit=10000&mimetype=yokes/font-woff'
}, {
test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
use: 'file-loader'
}, {
test: /\.(png|jpg|jpeg|gif|svg|ico)$/,
use: 'url-loader'
}];
module.exports = loaders;


Valeriy
23.10.2017
12:36:06
там нет конвертеров css
препроцессоров

Google

Maksim
23.10.2017
12:36:29
<label class="dvero_label">Имя клиента <input class="dvero_input" id="client-name" type="text" ng-model="name"></label><br>
чтобы отследить изменения надо вотчер вешать? проще нет способа?

Bohdan
23.10.2017
12:37:07

Valeriy
23.10.2017
12:37:50

Bauyrzhan
23.10.2017
12:38:21
а можно как то без шаблонизаторов?

Valeriy
23.10.2017
12:38:27

Bohdan
23.10.2017
12:39:00
а можно как то без шаблонизаторов?
используй без шаблонизаторов, не проблема
{template: require('./path-to-template')}
вебпак все соберет, включая шаблоны, в один js бандл и будет красота

Maksim
23.10.2017
12:42:15

Bohdan
23.10.2017
12:43:06

Valeriy
23.10.2017
12:43:36

Maksim
23.10.2017
12:43:54
только вот контроллер не отработает больше получается, он исполняется 1 раз при загрузке страницы?

Bohdan
23.10.2017
12:44:13

Valeriy
23.10.2017
12:44:43
да, а ещё он не хочет собирать owl.carousel и enjoyhint
поэтому подсовываем их отдельно

Maksim
23.10.2017
12:45:04
все, понял

Sergey
23.10.2017
13:42:48
Господа, кто нибудь знает можно ли запостить текст с картинкой в facebook с помощью их api?

Nikolai
23.10.2017
13:55:33
можно

Petro
23.10.2017
14:54:12
Здраствуйте. Нуждаюсь в помощи. Использую Restangular. Меня интересует интерцептор. В 50% случаев, когда получаю статус 404 нужно сделать редирект пользователя, а в других 50% не нужно делать редиректа. Есть у кого идея? Или может кто раньше чтото подобное делал
добавил в интерцепторе редирект, но щас это летит даже в тех случаях, когда это не нужно
возможно получиться както выключать интерцептор на некоторые вопросы?

Google

Bohdan
23.10.2017
14:58:57
возможно получиться както выключать интерцептор на некоторые вопросы?
Нет. На то он и интерцептор
Как по мне, 404 нужно обрабатывать в обработке запроса.
Для интерцептора правильным будет обрабатывать ситуации когда пользователь неавторизирован, добавлять ключи сессии к запросам или когда сервер говорит что сессия устарела. То есть ответы от сервера которые могут вылезть на любой запрос

Petro
23.10.2017
14:59:23
хороший ответ, спасибо. ктонибудь еще?

krn
23.10.2017
15:11:07
привет всем, знакомы ли вы с жасмин тестами и httpBackend?
////
$httpBackend.when('POST', 'blabla/auth/signup').respond(400, 'error');
///
как можно вернуть с этого мока статус 400? почему, если вернуть статус 200 все нужные вещи отрабатывают, а со статусом 400 нет?

Admin
ERROR: S client not available

Bohdan
23.10.2017
15:30:32
или, на крайний случай, мокай непосредственно $http объект и тестируй, по примеру моей архитектуры, слой serviceAPI.
let contactService: ContactService;
beforeEach(angular.mock.module('contacts', ($provide: any) => {
contactService = {};
$provide.constant('npContactService', contactService);
}));
а потом как нужно будет в тесте проганяй
contactService['getMyContacts'] = jasmine.createSpy('contactService.getMyContacts').and.returnValue(
Observable.of(returnObject)
);
expect(contactService['getMyContacts']).toHaveBeenCalledWith({getAddress: true}, null, 1, 10);


krn
23.10.2017
15:45:26
Понял, спасибо )) завтра гляну ))

Dmitry
24.10.2017
18:07:11
Привет. Может кто может подсказать, как такой объект вывести в таблицу -

Bohdan
24.10.2017
18:12:43

Artem
24.10.2017
18:12:55
Во вложенности? Для вложенных объектов делать таблицу в ячейке

Nikolai
24.10.2017
18:30:52
250 не так и дохера

Bohdan
24.10.2017
18:35:16

Nikolai
24.10.2017
18:36:19

Bohdan
24.10.2017
18:36:57

Nikolai
24.10.2017
18:37:11
Отец

Dmitry
24.10.2017
20:09:14

Google

Nikolai
24.10.2017
20:42:57
ТЗ 80-го уровня

Artem
24.10.2017
22:54:10

Bauyrzhan
25.10.2017
10:30:22
как заинжектить плагины которые тянутся с node_modules
в галпе
чет на сколько я помню инжект всегда был на bower_components
css

Bohdan
25.10.2017
11:29:20

Bauyrzhan
25.10.2017
11:29:33
да это легаси проект
тут толстый конфиг и так
на галпе

Bohdan
25.10.2017
11:30:33
да это легаси проект
если все таки никак, то нужно добавить пути к js файлам этой библиотеки в склеивание js бандла