私は関数addPolylineに値を渡しています(小道具)内の値であるオブジェクトの値を変更するにはパス値と色を動的別のオブジェクト
var lineSymbol = {
path: 'M 0,-1 0,1',
strokeOpacity: 1,
scale: 4,
strokeWeight: 2,
};
function addPolyline(props){
flightPath = new google.maps.Polyline({
path: props.flightPath,
geodesic: true,
strokeColor: props.color,
strokeOpacity: 0,
icons: [{
icon: lineSymbol,
offset: '0',
repeat: '20px'
}]
});
}
addPolyline({
flightPath: flightPlanCoordinates,
color: "#f9a61e"
});
を変更するしかし、どのように、私は不透明度を変更するにはどうすればよいですlineSymbolの内側にありますが、アイコンキーの一部としてaddPolylineで呼び出されます。あなただけの必要な値
function addPolyline(props){
lineSymbol.strokeOpacity = props.symbolOpacity;
flightPath = new google.maps.Polyline({
...
か、あなたがグローバルlineSymbol
function addPolyline(props){
var symbol = Object.assign({}, lineSymbol)
symbol.strokeOpacity = props.symbolOpacity;
flightPath = new google.maps.Polyline({
...
icons: [{
icon: symbol,
を変更し、起動しない場合に合格するためにあなたのprops
を使用してlineSymbolに値を初期化する必要が
初期化の前にlineSymbolを変更できません。 'flightPath'?次のようなものがあります: 'lineSymbol.strokeOpacity = props.newOpacity'。 –
複数のアイコンを持つことができると仮定すると、アイコンをループしてオブジェクトをマージ/オーバーライドする必要があります。 – Rajesh