Làm thế nào để tích hợp AngularUI vào AngularJS?


79

Xin lỗi vì câu hỏi ngớ ngẩn, mọi người có biết cách bắt đầu sử dụng AngularUI không? Tôi đã tải xuống từ Github và đọc hướng dẫn trong README nhưng vẫn không hiểu mình phải làm gì.

Câu trả lời:


63

Các bước tích hợp:

  • Bao gồm jQuery và jQuery-ui (được phân phát tốt nhất từ ​​CDN)
  • Bao gồm góc cạnh (tốt nhất là bao gồm nếu từ CDN)
  • Bao gồm JS / CSS góc-ui (hiện chỉ được lưu trữ trong kho lưu trữ GitHub trong buildthư mục)
  • Bao gồm bất kỳ plugin jQuery nào cho các lệnh mà bạn định sử dụng
  • Khai báo các phụ thuộc trên các mô-đun góc-ui ( ui.directiveshoặc ui.filterstùy thuộc vào những gì bạn định sử dụng).

Hầu hết các bước được phác thảo chỉ là bao gồm các phụ thuộc JS / CSS. Phần "khó" duy nhất là khai báo các phụ thuộc trên một mô-đun ui. *, Bạn có thể làm như sau:

var myApp = angular.module('myApp',['ui.directives']);

Sau khi tất cả các phụ thuộc được bao gồm và một mô-đun được định cấu hình, bạn đã sẵn sàng sử dụng. Ví dụ: sử dụng chỉ thị ui-date đơn giản như (lưu ý ui-date):

<input name="dateField" ng-model="date" ui-date>

Đây là jsFiddle hoàn chỉnh hướng dẫn cách sử dụng chỉ thị ui-date: http://jsfiddle.net/r7UJ2/11/

Bạn cũng có thể muốn xem các nguồn của http://angular-ui.github.com/ nơi có các ví dụ trực tiếp về tất cả các hướng dẫn.


Trên thực tế, bước 1 là tùy chọn tùy thuộc vào chỉ thị bạn sử dụng và bước 5 không chính xác vì chỉ bao gồm ui.directivessẽ tạo ra lỗi khi ui.configđược tham chiếu. Thay vào đó, bạn nên luôn bao gồm uivà chỉ xóa các chỉ thị / bộ lọc mà bạn không muốn.
ProLoser

Hmm, nếu tôi không nhầm thì bước 5 thực sự đúng vì cả hai ui.directivesui.filterscó sự phụ thuộc vào ui.configmô-đun. Nhưng chắc chắn, nó chỉ có thể đề cập đến uimô-đun.
pkozlowski.opensource

Dưới đây là một ví dụ về tích hợp góc-ui, góc-dây đeo, jquery, và hơn một chút - github.com/robertjchristian/angular-enterprise-seed
Robert Christian

@martinpaulucci có vẻ như jsfiddle cập nhật cũng bị phá vỡ
wmitchell

Bao gồm jQuery sẽ khuyến khích thao tác DOM. Đó không phải là ngày tận thế nhưng nó có thể khiến bạn nản lòng trong việc giải quyết vấn đề theo một cách góc cạnh.
RevNoah

21

Kể từ ngày 3 tháng 5 năm 2013, đây là các bước:

bao gồm

    <script src="angular.min.js"></script>
    <script src="ui-bootstrap-tpls-0.3.0.min.js"></script>

đăng ký ui

    angular.module('myFancyApp', ['ui.bootstrap']);

đảm bảo myFancyAppgiống như trong của bạn<html ng-app="myFancyApp">

Hãy để phép thuật bắt đầu.


Và hiện tại, hãy sử dụng twitter-boostrap-css v2.3.1 hoặc thứ gì đó tương tự chứ không phải v3.
SunnyRed

3
Tôi hơi bối rối ở đây. góc-ui-bootstrap và góc-ui là hai dự án khác nhau
Zach Lysobey

11

Tôi nghĩ thứ còn thiếu là các plugin - bạn phải thêm các tập lệnh jquery plugin và css để một số chỉ thị angle-ui hoạt động. Ví dụ, chỉ thị codemirror cần:

    <script src="http://codemirror.net/lib/codemirror.js" type="text/javascript"></script>
    <script src="http://codemirror.net/lib/util/runmode.js" type="text/javascript"></script>
<link rel="stylesheet" href="http://codemirror.net/lib/codemirror.css" type="text/css" />

Thật ngạc nhiên đối với tôi là angle-ui.github.com không đề cập đến việc cần bao gồm các plugin.


3

Xin chào, tôi đã viết một bài báo cụ thể về cách thực hiện việc này để làm nổi bật cú pháp PHP. Bài viết ở đây: http://neverstopbuilding.net/how-to-integrate-codemirror-with-angular-ui/

Cốt lõi của mọi thứ là cấu hình đúng:

var myApp = angular.module('myApp', ['ui']);

myApp.value('ui.config', {
    codemirror: {
            mode: 'text/x-php',
        lineNumbers: true,
        matchBrackets: true
    }
});

function codeCtrl($scope) {
    $scope.code = '<?php echo "Hello World"; ?>';
}

Đối với một cái gì đó giống như đoạn mã HTML sau:

<div ng-app="myApp">
    <div ng-controller="codeCtrl">
        <textarea ui-codemirror ng-model="code"></textarea>
    </div>
</div>

Bạn có thể xem toàn bộ jsfiddle của thiết lập tại đây: http://jsfiddle.net/jrobertfox/RHLfG/2/

pkozlowski.opensource nói đúng, có rất nhiều tệp mà bạn cần đưa vào hơn là có vẻ như từ tài liệu AngularUI (nếu bạn có thể gọi nó là tài liệu ...)

Dù sao tôi hy vọng điều này là hữu ích cho bạn hoặc những người khác.


+1 vì khiến tôi nhận ra rằng tôi đã tiêm sai mô-đun. Tôi đang cài đặt 'angle-ui' thông qua bower và cố gắng tiêm 'ui.bootstrap'. Hai thứ riêng biệt.
saiyancoder

1

Hướng dẫn có trong tệp readme.md tại kho lưu trữ github chính thức của họ

Giao diện người dùng Angular

Ngoài ra, cách bạn có thể tìm hiểu cách tích hợp là mở tệp angle-ui js (ví dụ: ui-bootstrap-tpls-0.6.0.js) và trong dòng đầu tiên, bạn sẽ thấy câu lệnh sau

angular.module("ui.bootstrap", [...deps...])

Dựa trên đoạn mã trên, bạn cần đưa 'ui.bootstrap' vào mô-đun của mình.

  angular.module('myFancyApp', ['ui.bootstrap','other_deps',.....]);

đây là những hướng dẫn kiễu góc UI Bootstrap
Zach Lysobey
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.