我已將vue 1.0.18 min.js包含在html頁面的腳本標記中。Vue js應用程序未在應用程序內定義
specialText行不起作用。
var tagApp;
window.onload = function() {
/* Vue Js App here */
tagApp = new Vue({
el: '#app',
data: {
title: 'Title',
chars: [{
name: "Jarred",
attack: 15,
health: 70,
special: "Block",
blockVal: 5,
specialText: "Passive: Blocks "+ tagApp.chars[0].blockVal +" Damage."
// line above: here it doesn't work
// gives: "can't get chars of undefined"
}, {
name: "John"
}]
}
}); // close app
alert(tagApp.chars[0].blockVal); // here it works
getBlockVal(); // here it also works
} // close window.onload
function getBlockVal() {
var arr = [{
name: "henry",
description: "blocks " + tagApp.chars[0].blockVal + " dmg."
}];
alert(arr[0].description);
}
我也試着SPECIALTEXT以下內:
this.blockVal
給出定義。
this.parent.blockVal
給出未定義。
this.chars[0].blockVal
說明字符是未定義的。
tagApp.chars[0].blockVal
說tagApp是未定義的。
請幫忙。
這工作。謝謝!但是,當我改變blockVal,specialText仍然使用舊的blockVal值,因爲創建只調用一次。所以我添加了一個方法來更新specialText,它的工作原理。 – MathewT
太棒了!不知道爲什麼人們低估了我的答案。 –