2016-06-24 8 views
1

私はAngular JSの学習を始めました。私はAngularが内部でどのように働いているのか理解していません。例えば。さんはw3schools' first exampleを考えてみましょう:Angular JSはどのように機能しますか?

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app=""> 
 
    
 
<p>Input something in the input box:</p> 
 
<p>Name : <input type="text" ng-model="name" placeholder="Enter name here"></p> 
 
<h1>Hello {{name}}</h1> 
 

 
</div>

質問:

  1. は、どのように私は、プレーンJavaScriptで属性myng-myappを作成するのですか?

  2. html言語で{{}}とは何ですか?これらのコンテンツはどのようにテキストに変換されますか?プレーンなjavascriptで同じ効果をどうやって作りますか?つまり、angularjsライブラリを使用しないで、{{name}}をhtmlファイルに挿入します。今スクリプトのタグで私はvar name = "Bob"を定義します。今度は{{name}}Bobに変換するにはどうすればよいですか?

編集:これは私の質問は、リンクされた1の重複しない方法です:

  1. 私の質問は、コンパイラ、コントローラ、prelinkのポストリンクについて尋ねていません。
  2. 私の質問では質問していませんさまざまな機能を宣言する方法は?ソーステンプレートとインスタンステンプレートの違いは何ですか?どのような順序でディレクティブ関数が実行されますか?これらの関数呼び出しの間に何が起こりますか?

  3. リンクされた質問では、プレーンなjavascriptでカスタム属性を作成する方法について説明していません。

  4. {{}}はHTMLまたはCSSで説明されていません。

リンク先の質問は、あなたがその部分歓迎ショーで、私は私の質問を削除させていただきます私の質問のいずれかを答えると思われる場合。

ありがとうございます。ご質問

+5

是非、開発ガイドを開いて読んでください。誰かがここでそれを説明すると本当に思いますか? - あなたが求めているものは*巨大です*。 https://docs.angularjs.org/guide – dfsq

+0

@dfsqコアのコンセプトで角1と角2は同じですか?公式の文書はjavascriptを使ってAngular2について説明していないので、彼らはtypescriptで説明しています。 – user31782

+0

また興味があるかもしれません:http:// stackoverflow。com/questions/24615103/angle-directives-when-and-how-to-use-compile-controller-pre-link-and-postしかし、すでにSOやその他の情報源に関する多くの情報があります。 – ArBro

答えて

1

回答:

  1. あなたはプレーンなJavaScriptでそれを作成することはできません。 ng-で始まるすべての属性は、Angularで解釈されます。これは、HTML、CSS、またはJavaScript標準の一部ではありません。
  2. 1と同じ回答{{}}はHTML標準の一部ではありません。

Angular(またはjQueryのような他のjavascriptフレームワーク)は、HTMLのようなアドオンや拡張機能(Chromeのような)をCSS、JavaScriptなどと考えてください。

+0

次に、角度jの作成者は、typescriptを使ってブラウザのHTMLとJavaScript言語を拡張していますか?角度はhtmlやJavaScriptで新しいものを作りますか? – user31782

+0

TypeScript _compiles_をjavascriptに入力します。 Javascriptは**タイプのない**言語です。つまり、何かが整数、文字列、ブール値などであるかどうかを指定する必要はありません。TypeScriptは、あなたが推測すると、** typed ** languageです。 Angularの_makers_(Google btw)は、htmlやjavascriptの機能を拡張しました。クールでレスポンシブなウェブサイトを簡単に作成できます。 –

+0

実際には、 'Element.setAttribute()'を使ってJavascriptで設定できます。あなたがそれについて考えるならば。 AngularはJSにも書かれています(実際にはTypescript、JSにコンパイルされます)ので、魔法のようなものではありません。 – Antimony

関連する問題