рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдореИрдВрдиреЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рд▓рд┐рдЦрд╛ рдерд╛ рдФрд░ рдпрд╣ рд╕рдм рдЖрджрд░реНрд╢ рдирд╣реАрдВ рдерд╛ред рдФрд░ рдлрд┐рд░ рдореИрдВрдиреЗ рд╕реЛрдЪрд╛, рдЕрдЧрд░ рдореИрдВ рдЕрдм рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛, рддреЛ рдореИрдВ рдХрднреА рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛, рдЖрджрд░реНрд╢ рдкреНрд░рд╛рдкреНрдп рдирд╣реАрдВ рд╣реИ!
рдПрдкреАрдЖрдИ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╕рдордп, рд╡рд╣ рд╕рд┐рджреНрдзрд╛рдВрдд рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдерд╛ - рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рд╕рд░рд▓ред рдЗрд╕рд▓рд┐рдП, рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░:
рдХреЗрд╡рд▓ POST рд╡рд┐рдзрд┐ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред рдЬреИрд╕рд╛ рдХрд┐ рдЕрднреНрдпрд╛рд╕ рд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ, рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд▓рдЧрднрдЧ рдХрднреА рднреА рдПрдХ рдЕрд▓рдЧ рдЗрдХрд╛рдИ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдФрд░ рд╣рдореЗрд╢рд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЗрдЯрд╛ рд╕реЗ рдЬреБрдбрд╝реА рд░рд╣рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛рдирд╛ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред рдпрд╣ рд╕рд╣реА рд╣реИ: рдкрд╣рд▓реЗ рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛рдПрдВ, рдлрд┐рд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝реЗрдВред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдбрд╛рдЙрдирд▓реЛрдб рдХреЛ рд░рджреНрдж рдХрд░рдиреЗ, рдлрд╝рд╛рдЗрд▓ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░ рд╕рдВрдкрд╛рджрди рдЖрджрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛рдХрд░, рд╣рдо рд╕рд░реНрд╡рд░ рдкрд░ рдореБрдХреНрдд рд╕реНрдерд╛рди рдХреА рдорд╛рддреНрд░рд╛ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред рдХрд┐рд╕реА рднреА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкрд░, POST рдЕрдиреБрд░реЛрдз рдХреЗ рдЕрдзрд┐рдХрддрдо рдЖрдХрд╛рд░ (рдЬреИрд╕реЗ 10 рдПрдордмреА) рдХреА рд╕реАрдорд╛ рд╣реЛрддреА рд╣реИред рдпрджрд┐ рд╣рдо рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ 10 рдлрд╛рдЗрд▓реЗрдВ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрдирдХрд╛ рдХреБрд▓ рд╡рдЬрди 10 рдПрдордмреА рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред 99% рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдкреНрд░рджрд░реНрд╢рди рдХреЛ рддреНрдпрд╛рдЧрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреА рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред
рдХреЛрдИ рд╡рд┐рд▓рдВрдмрд┐рдд рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВред рдирд╣реАрдВ - рдлрд╝рд╛рдЗрд▓ (рдореЗрдВ рдирд╣реАрдВ 2000, рдЪрд╛рдп, рд▓рд╛рдЗрд╡) рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЗ рдмрд╛рдж рддреБрд░рдВрдд рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП рд╡рд╣рд╛рдБ рдХрддрд╛рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рддрд░реАрдХреЗ рд╣реИрдВ - 5 рдЯреБрдХрдбрд╝реЗ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЪрдпрди, рдПрдХ рдХреЛ рд╣рдЯрд╛рдиреЗ, "рднреЗрдЬреЗрдВ" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рдбрд╛рдЙрдирд▓реЛрдб рдХреЛ рд░рджреНрдж рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдХреНрд▓рд┐рдХ рдФрд░ рдбреНрд░реИрдЧ рдХрд░рдХреЗ рдлрд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХреЛ рдЕрд▓рдЧ рди рдХрд░реЗрдВред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рдХреЛрдИ рднреА рдХреНрд╖реЗрддреНрд░ рдЖрдкрдХреЛ рдЗрд╕ рдкрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЦреАрдВрдЪрдиреЗ рдФрд░ рдЫреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдпрд╣ рдЯрд╛рдЗрдк рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдПрдХ рдЗрдирдкреБрдЯ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдореЗрдВ рднреА рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдмрдЯрди рдЬрдм 10 рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЦреАрдВрдЪ рд▓рд┐рдпрд╛ рдЦреАрдВрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░ рдХреНрд╖реЗрддреНрд░ рдЦреАрдВрдЪреЗрдВ, рдЦреАрдВрдЪреЗрдВ рдкрд░ рдФрд░ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдпрд╛ рдирд╣реАрдВ, рд╡реЗ рдПрдХ рдирдП рд╡рд┐рдВрдбреЛ рдореЗрдВ рдЦреБрд▓реЗрдЧрд╛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреВрд▓ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рдЖрджрд░реНрд╢ рд╡рд┐рдХрд▓реНрдк рдПрдХ рд╕рдВрд╕рд╛рдзрди рдпрд╛ рдЗрд╕реА рддрд░рд╣ рдХреЗ $ рдмрдЪрдд рд╡рд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЖрдк рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд▓рд┐рдП рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (
рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдПрдХ
рдмреИрд╕рд╛рдЦреА )ред рдореИрдВ рдЕрднреА рддрдХ рдЗрддрдиреА рдЧрд╣рд░рд╛рдИ рддрдХ рдирд╣реАрдВ рдЪрдврд╝ рдкрд╛рдпрд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдФрд░ рдЕрдзрд┐рдХ рдЕрдирд╛рдбрд╝реА рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ред
рдореЙрдбреНрдпреВрд▓ рд╕реБрд╡рд┐рдзрд╛рдПрдБ
- Xhr рдФрд░ iframe рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ (рдкреБрд░рд╛рдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП)
- рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдирд╛ (рдпрджрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ FileReader рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ)
- рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдмрдЯрди рдФрд░ рдбреНрд░реИрдЧ рдПрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░реНрджреЗрд╢ред
- рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛, рдЬрд┐рд╕реЗ рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди, рдЬрд┐рд╕реЗ рдЖрдкрдХреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рднреА рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рдПрдХ рд╕рд╛рде рдЕрдкрд▓реЛрдб рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордЧреНрд░ рдкреНрд░рдЧрддрд┐ред
рднрд╡рд┐рд╖реНрдп рдХреА рдпреЛрдЬрдирд╛ (рдЖрдкрдХреА рдорджрдж рд╕реЗ ;-)
- рдПрдХ рд╕рд╛рде рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕реАрдорд┐рдд рдХрд░реЗрдВ
- рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдЪрд┐рддреНрд░ рдХреЛ рдХрдо рдХрд░рдирд╛
- Webcam
- рдкреБрд░рд╛рдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдбреЙрдХрд┐рдВрдЧ рдбрд╛рдЙрдирд▓реЛрдбрд░
- рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ
рд╕рдВрдмрдВрдз
рдореЙрдбреНрдпреВрд▓ рдХрдиреЗрдХреНрд╢рди:
angular.module('myApp', ['oi.file']);
HTML рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:
<input type="file" oi-file="options"> <ul oi-file="options"> <li ng-repeat="item in items"> <img ng-src="{{item.thumb}}"> </li> </ul>
рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧ:
$scope.file = {}
рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбрд▓ рддрддреНрд╡ рдмрдирд╛рдирд╛:
$scope.items = model; $scope.options = { change: function (file) {
+ рдЖрдИрдбреА, $ scope.items [i], {allowedType: [ "jpeg", "jpg", "png"]}) $scope.items = model; $scope.options = { change: function (file) {
catch
рд╡рд┐рдзрд┐ рдХреЛрдгреАрдп 1.2 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИред рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп
then(null, function (data) {...})
рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
$preview
рдФрд░
$upload
рд╡рд╛рдкрд╕реА рдХреЗ рд╡рд╛рджреЗред
$ Q рджреЗрдЦреЗрдВред
рдЧреНрд░рд╛рд╣рдХ рдкрд░ рдЫрд╡рд┐ рдореЗрдВ рдХрдореА рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг:
file.$preview({}) .then(function (data) {
рд╕реНрд░реЛрдд, рдбреЗрдореЛ
рдЬреАрдердм ,
рдбреЗрдореЛ ,
рд╕реИрдВрдбрдмреЙрдХреНрд╕рдПрдирд╛рд▓реЙрдЧ
рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ,
рдирд╕реЛрдВ рдиреЗ рдПрдХ рдмрд╣реБрдд рдЕрдореАрд░ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде
рдХреЛрдгреАрдп-рдлрд╝рд╛рдЗрд▓-рдЕрдкрд▓реЛрдб рд▓рд┐рдЦрд╛, рдЬрд╣рд╛рдВ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдПрдХ рдШрдЯрдирд╛ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИред рдЬрд┐рд╕ рдкрд░ рдореЗрд░реА рдЧрд░реАрдмреА рд╕реВрдЯ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдЙрд╕ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред