אנגולר: ריקון אוטו' של modal כתלות במשתנה אחר
-
אתה אכן הסברת המון אבל עדיין חסר לי כמה פרטים.
הקוד שכתבת לא מסביר את עצמו, יש לי בו קשיים, ואתה גם מעיר שהוא לא עובד.
הבנתי אבל מה אתה רוצה: תיבת טקסט אישית לכל אלמנט, תוצג רק לאחד מהם ע"י הקלקה ואח"כ תיעלם. אתה רוצה שמאפיין שבה הטקסט נשמר זמנית יתאפס אחרי שהכושי עשה את שלו.
אז באנגולר יש המון המון דרכים אפשריות לכל מטרה. מצד אחד כבר בחרת בדרך אז הכי קל זה ללטש אותה, מצד שני הדרך הזו לא נהירה לי.עריכה:
הספק שלי הוא האם עבדת עם משתנה כללי, שאחרי עריכתו מועתק הערך שלו למשתנה של האלמנט או שזה ישירות עובד על האלמנט. -
@dovid אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
אתה גם מעיר שהוא לא עובד
המודל לא עובד, הקליק עובד טוב.
@dovid אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
הספק שלי
באיזה חלק?
-
@אהרן אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
@אהרן אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
נראה שפה התשובה
אשמח להסבר.הפתרון הזה אכן פתר את הבעיה.
השאלה אם יש חסרונות בng-show לעומת ng-if
מתוכננים אלפים רבים של אלמנטים.הפתרון הזה = להשתמש ב ng-show במקום ng-if.
אשמח להסבר לנאמר כאן בנידון
המשתנה שנוצר ע"י ng-init חייב להיות אוביקט ולא פרמיטיב וכך גם המשתנה שמוצמד לסקופ ומשמש כמודל? -
@אהרן אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
@אהרן אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
@אהרן אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
נראה שפה התשובה
אשמח להסבר.הפתרון הזה אכן פתר את הבעיה.
השאלה אם יש חסרונות בng-show לעומת ng-if
מתוכננים אלפים רבים של אלמנטים.הפתרון הזה = להשתמש ב ng-show במקום ng-if.
אשמח להסבר לנאמר כאן בנידון
המשתנה שנוצר ע"י ng-init חייב להיות אוביקט ולא פרמיטיב וכך גם המשתנה שמוצמד לסקופ ומשמש כמודל?התשובה היא כן
כי?
רק הפניה לאוביקט מתנהג כמצביע? -
אני התייאשתי מלהבין את מה שקרה איתך,
ולכן הוספתי מהיצירתיות שלי כדי שיעבוד.
https://plnkr.co/edit/2fnlsmQQwIt073pzJzTA?p=previewיש בעיה קטנה להשתמש במשתנה בתוך ng-repeate כי זה יוצר סקופ מבודד לכל איטרציה, לכן ראיתי באינטרנט שאומרים להתייחס רק לאבייקטים וזה מה שעשיתי (אובייקט editName). ייתכן שלזה התכוונת בהודעות האחרונות, אני לא בטוח.
בקשר לשמות שיניתי הרבה כי היה די בלגן מבחינתי. -
-
ערכתי את הדוגמא שלך
https://plnkr.co/edit/yOPo7mDbOx4wiXhuSABX?p=preview
מקווה שעכשיו הכל מובן.
זה כתוב ומתוכנן נכון?אני רוצה ללמוד על דייריקטיב
אם אפשר להכין משהו בסיסי מהקוד הנוכחי ובא לך לעשות א"ז, אשמח מאוד. -
היו 2 נושאים עיקריים שהתקשיתי
- שגעון שהשורה:
$scope.editName.current = null;
תפטור אותנו מהשורה:
$scope.editName.theNameToAdd = null
כי האלמנט נמחק וממילא אין למודל לאן להתחבר. זו שטות מוחלטת, בפרט אם המודל יהיה משויך לאלמנטים נוספים שלא ימחקו.
- בתחילה לא הבנתי מדוע הקוד הזה לא עובד:
ng-model="editName.theNameToAdd"
והסיבה היא כיון שזה בתוך אלמנט בן עם סקופ חדש, אלא צ"ל:
ng-model="$parent.editName.theNameToAdd"
עכשיו אני חושב שהכל עובד כמצופה
אני שואל על הקוד והתכנון בכלל
ועל דרייקטיב. -
-
@dovid אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
לי עובד בלי ה$parent
וואו, מוזר'! לא מצליח לשחזר, אבל בצהרים זה עבד לי בדיוק כמו בתשובה כאן
https://github.com/angular/angular.js/issues/6038ולמה בדוגמא הזו parent לא עוזר?
https://plnkr.co/edit/aAHaSEuxQvnTUrsIK0eU?p=preview -
@אהרן אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
@dovid אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
במקרה השני הוא גם לא עוזר כי מדובר במשתנה פרימיטיבי שאליו א"א לגשת בתוך ng-repeat.
למה? מה ההבדל?
כתבתי לעיל שההתנהגות של ng-repeat גורמת שכל התייחסות בתוכה למשתנה פרימיטיבי לא עובדת. לא מבין את עומק העניין, אבל זו עובדה.
-
זה כבר לא רלוונטי כי טעיתי בצרכים שלך. לא ידעתי שהעדכון מחליט על מה לחול לפי מי שריק, ולא ידעתי שבהכרח אחד חייב להיות מלא. כפי שזה כעת, בניתי לך דיירקטיב - מופיע לעיל - תוכל לעיין בו.
עשיתי שמה כמה שטיקים, אבל הרוב פשוט.בקשר לדיירקטיב בניתי אחד לדוגמה:
https://plnkr.co/edit/OKMBQwUcwOQH5M6ix4qZ?p=preview -
@dovid אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
@אהרן אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
@dovid אמר באנגולר: ריקון אוטו' של modal כתלות במשתנה אחר:
במקרה השני הוא גם לא עוזר כי מדובר במשתנה פרימיטיבי שאליו א"א לגשת בתוך ng-repeat.
למה? מה ההבדל?
כתבתי לעיל שההתנהגות של ng-repeat גורמת שכל התייחסות בתוכה למשתנה פרימיטיבי לא עובדת. לא מבין את עומק העניין, אבל זו עובדה.
ng-repeat יוצר סקופ חדש עבור כל איטרציה.
מכיון שמומלץ מאוד לשמור דברים רק בקונטרולר ולא בסקופ, אז גם אין את הבעיה של סקופ חדש.